728x90
arrayList에 넣어준 후 오름차순 정렬,
홀수번째 값 (index상으로는 i%2==0인 i값)을 기준으로
다음 값(짝수번째)이 홀수번째값과 같을 때 continue,
조건을 만족하지 않으면 break,
for문이 끝에 도달할 경우 따로 처리
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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | public int solution(int[] A) { // write your code in Java SE 8 // for(int i : A){ // System.out.println(i); // } ArrayList<indexAndValue> arr = new ArrayList<>(); for (int i = 0; i < A.length; i++) { arr.add(new indexAndValue(i, A[i])); } Collections.sort(arr); // System.out.println(); // System.out.println(arr.size()); int pre = 0; for (int i = 0; i < arr.size(); i++) { if (i % 2 == 0) pre = arr.get(i).value; if (i % 2 == 1) { if (pre != arr.get(i).value) break; } // System.out.println(arr.get(i).value); if (i == arr.size() - 1) pre = arr.get(i).value; } return pre; } class indexAndValue implements Comparable<indexAndValue> { int index; int value; indexAndValue(int index, int value) { this.index = index; this.value = value; } @Override public int compareTo(indexAndValue iav) { return Integer.compare(this.value, iav.value); } } | cs |
'알고리즘 풀이 > Codility' 카테고리의 다른 글
codility - Time Complexity (TapeEquilibrium) (0) | 2019.12.10 |
---|---|
codility - Time Complexity (PermMissingElem) (0) | 2019.12.10 |
codility - Time Complexity (FrogJmp) (0) | 2019.12.10 |
codility - Arrays (CyclicRotation) (0) | 2019.12.09 |
codility - Iterations (BinaryGap) (0) | 2019.12.09 |