728x90
https://www.acmicpc.net/problem/2470
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
StringTokenizer st = new StringTokenizer(br.readLine());
long[] arr = new long[n];
for (int i = 0; i < n; i++) {
arr[i] = Long.parseLong(st.nextToken());
}
Arrays.sort(arr);
int left = 0;
int right = n - 1;
long minValue = Long.MAX_VALUE;
long leftAnswer = 0, rightAnswer = 0;
while (left < right) {
long value = arr[left] + arr[right];
if (value > 0) {
if (minValue > Math.abs(value)) {
minValue = Math.abs(value);
leftAnswer = arr[left];
rightAnswer = arr[right];
}
right--;
} else if (value < 0) {
if (minValue > Math.abs(value)) {
minValue = Math.abs(value);
leftAnswer = arr[left];
rightAnswer = arr[right];
}
left++;
} else {
leftAnswer = arr[left];
rightAnswer = arr[right];
break;
}
}
System.out.print(leftAnswer + " " + rightAnswer);
}
}
회고
- 골드5 치곤 좀 쉬웠던 문제 같다
- 투 포인터 기본 문제였다
'Algorithm Study > BaekJoon (JAVA)' 카테고리의 다른 글
백준 19637_IF문 좀 대신 써줘_JAVA (0) | 2024.05.30 |
---|---|
백준 1715_카드 정렬하기_JAVA (0) | 2024.05.19 |
백준 16234_인구 이동_JAVA (0) | 2024.05.05 |
백준 1918_후위 표기식_JAVA (0) | 2024.04.29 |
백준 4949_균형잡힌 세상_JAVA (0) | 2024.04.28 |