반응형
알고리즘 분류로 정렬 문제를 풀고있는데 이문제는 정렬의 문제가 아닌거 같다.
가장 중요한건 long 변수를 사용해야 한다는 점?
2중 반복문으로 전체를 계산했기 떄문에 시간 성능 나쁘다.
정렬을 하나 마나 똑같을 테고..
좀 더 빠른 방법이 있긴 할텐데..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import java.io.FileInputStream; import java.util.*; public class Main { public static void main(String args[]) throws Exception { // Scanner sc = new Scanner(System.in); Scanner sc = new Scanner(new FileInputStream("input.txt")); int N = sc.nextInt(); // 0 이상 1,000,000,000 이하의 정수 이기떄문에 long 변수 사용 long[] arr = new long[N]; long sum = 0; for (int i = 0; i < N; i++) { arr[i] = sc.nextLong(); } // 정렬 안했고 2중 반복문을 통해서 절대값으로 처리해서 계산했다. // i == j 일때 처리하지 않은 이유는 어차피 arr[i] - arr[j] 는 0이 되기 때문 for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { sum += Math.abs(arr[i] - arr[j]); } } System.out.println(sum); } } | cs |
반응형
'나는요 공부가 좋....은걸... > 알고리즈음' 카테고리의 다른 글
[BOJ] 백준 2193 - 이친수 (자바) (0) | 2018.01.18 |
---|---|
[BOJ] 백준 10825 - 국영수 (자바) (0) | 2018.01.13 |
[BOJ] 백준 11651 - 좌표 정렬하기 (자바) (0) | 2018.01.12 |
[BOJ] 백준 10814 - 나이순 정렬 (자바) (0) | 2018.01.12 |
[BOJ] 백준 11650 - 좌표 정렬하기 (자바) (0) | 2018.01.12 |