※ 공부 내용의 복습 개념으로 정리된 글입니다. - 출처 시나공 배열의 개념배열은 동일한 데이터 유형을 여러 개 사용해야 할 경우 이를 손쉽게 처리하기 위해 여러 개의 변수들을 조합해서 하나의 이름으로 정의해 사용하는 것을 말합니다.배열은 하나의 이름으로 여러 기억장소를 가리키기 때문에 배열에서 개별적인 요소들의 위치는 첨자를 이용하여 지정합니다.배열은 변수명 뒤에 대괄호 []를 붙이고 그 안에 사용할 개수를 지정합니다.C언어에서 배열의 위치는 0부터 시작됩니다.배열은 행 우선으로 데이터가 기억장소에 할당됩니다.C 언어에서 배열 위치를 나타내는 첨자 없이 배열 이름을 사용하면 배열의 첫 번째 요소의 주소를 지정하는 것과 같습니다. 1차원 배열1차원 배열은 변수들을 일직선상의 개념으로 조합한 배열입니다...
2024.08.15기준 - 골드4백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 주어진 키워드가 I 또는 D가 들어올 때, I n 이면 n을 추가 D 1 이면 최댓값을 D -1이면 최솟값을 제거 후 최댓값과 최솟값을 출력하는 문제입니다. 이 문제는 시간초과가 많이 나와 여러가지 방법을 찾다가 TreeMap을 활용하여 문제에 접근하게 되었습니다.처음엔 priorityqueue를 이용해 오름차순, 내림차순의 큐를 2개 생성해 해당 값을 제거할 때, remove를 사용해 제거를 진행했지만 시간초과가 나와 여러가지 방법을 생각해보았습니다. 우선 TreeMap에 대한 설명을 하자면키의 자동 정렬TreeMap은 키를 기준으로 자동으로 정렬을 합니다.기본적으로 오름차순으로 정렬되지만, 커스텀 Comp..
2024.08.14기준 - 실버4백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 n이 주어질 때, 1 ~ n을 이용해서 부분 수열들의 합이 가장 높은 수열을 출력하는 문제입니다. 예제를 통해 문제를 이해하도록 하겠습니다.1. n이 4가 주어지면 인덱스별로 호출되는 횟수를 정의해봤습니다.가운데 있는 수들이 가장 많은 횟수를 나오는걸 확인할 수 있습니다.(큰 수가 많이 호출될 수록 합이 높게 나옵니다.) 2. 이를 이용해 높은 수 일수록 가운데에 배치하며 작은 수 일수록 가장자리에 위치하도록 Deque를 이용했습니다.앞 뒤를 한 번 씩 넣어 수열을 완성해주었습니다.// 수열을 저장할 큐Deque qu = new LinkedList();boolean check = false; // 앞 뒤를 구..
2024.08.13기준 - 실버4백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 주어진 수열에서 모든 쌍의 최대공약수를 더 해 값을 출력하는 문제입니다. 주의할 점은 전체 합은 int범위를 넘어가기 때문에, long을 사용해야 된다는 점입니다. 예제를 통해서 문제의 설명을 하도록 하겠습니다.수열 : 10 20 30 40 1. 저는 List을 통해 각 수의 약수들을 전부 true를 통해 저장을 해주었습니다.static List list;public static void main(String[] args) throws IOException { list = new LinkedList(); st = new StringTokenizer(br.readLine()); n = Inte..