2024.08.27기준 - 실버5백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 x, y길이가 75, 100인 축구장 잔디를 깍을 때, 모든 면적을 잘 깍았는지 출력하는 문제입니다. 주어진 좌표를 중앙으로 가지면서 양 옆을 (폭 / 2) 만큼 잔디를 깍을 수 있습니다. 1. 입력이 "0 0 0.0"이 들어오면 반복문을 종료 시켜줍니다.// "0 0 0.0"이 들어오면 반복문을 종료한다.while (!(s = br.readLine()).equals("0 0 0.0")) { ...} 2. 입력의 순이 x좌표가 들어온 뒤 y좌표가 들어오기 때문에 x좌표 먼저 완벽하게 잔디를 깍는지 확인합니다.3. 잔디를 시작 위치 0을 기준으로 깍기 위해 정렬을 통해 천천히 잔디를 깍기 시작합니다.4. 현재 ..
2024.08.25기준 - 실버1백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 dp를 이용해 한 칸 씩 내려갈 때 마다 수를 더 해 마지막 칸에서 가장 큰 값을 가지고 있는 수를 출력하는 문제입니다. 예제를 통해서 문제를 풀어 나가도록 하겠습니다.// 예제573 88 1 02 7 4 44 5 2 6 5 1. dp에 초기 맨 꼭대기 층을 먼저 입력해줍니다.List[] list = new LinkedList[n + 1];// 꼭대기 층을 먼저 넣어 줍니다.list[0] = new LinkedList();list[0].add(0);list[1] = new LinkedList();list[1].add(Integer.parseInt(br.readLine())); 2. 맨 꼭대기 층에서 2번째 층..
2024.08.23기준 - 실버2백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 주어진 자연수를 이용하여 겹치지 않는 수열을 만들어 사전순으로 출력하는 문제입니다. 예제 2번을 통해 같이 설명을 하도록 하겠습니다.// 예제24 29 7 9 1 1. 먼저 중복된 수를 제거해주기 위해 입력된 자연수들을 TreeSet에 저장을 해주었습니다.TreeSet set = new TreeSet(); // 수를 저장할 set (중복 제거)st = new StringTokenizer(br.readLine());for (int i = 0; i TreeSet을 이용해 중복 제거와 정렬을 한 번에 이용했습니다. 2. 중복이 제거되면서 정렬이 된 set을 list화 시켰습니다.// 중복이 제거된 수를 list로 ..
2024.08.18기준 - 실버4백준, BEAKJOON, BOJ, JAVA, 자바 풀이이 문제는 가장 적게 움직여 모든 체크포인트를 찍고 돌아왔을 때 걸리는 거리를 출력하는 문제입니다. 1. 이 문제는 간단하게 가장 멀리 있는 순으로 k만큼 제거를 해주면 되는 문제입니다. 2. 우선 음수도 들어올 수 있기 때문에, 음수와 양수를 따로 저장하는 PriorityQueue를 생성합니다.// 양수를 저장하는 큐PriorityQueue pos = new PriorityQueue(Collections.reverseOrder());// 음수를 저장하는 큐PriorityQueue neg = new PriorityQueue();int num;while (n-- > 0) { num = Integer.parseInt..