반응형 Sorting2 Lesson 6 - Distinct 자세한 문제는 여기서 보실 수 있습니다. 이 문제는 array에 있는 값이 다른 숫자의 갯수를 반환하는 문제 입니다. A[0] = 2 A[1] = 1 A[2] = 1 A[3] = 2 A[4] = 3 A[5] = 1 이럴때 1,2,3이 있으므로 3이 반환됩니다. 해결 code는 다음과 같습니다 fun solution(A: IntArray): Int { // write your code in Kotlin A.sort() var ans = 1 var check = A[0] for(i in A.indices){ if(check != A[i]){ ans++ check = A[i] } } return ans } 그런데 이렇게 할경우 91%의 결과를 받습니다. (복잡도는 O(N*log(N)) or O(N) 입니다) .. 2019. 12. 14. Lesson6 - MaxProductOfThree 자세한 문제는 여기를 참조하세요 이 문제는 array에서 3개를 뽑아 최고로 큰 값을 찾는 문제입니다. 우선 제가 작성한 code는 fun solution(A: IntArray): Int { val size = A.size for (index in 1 until A.size) { val temp = A[index] var aux = index - 1 while (aux >= 0 && A[aux] > temp) { A[aux + 1] = A[aux] aux-- } A[aux + 1] = temp } var k_1 = A[0]*A[1]*A[size-1] var k_2 = A[size-1]*A[size-2]*A[size-3] if(k_1 > k_2){ return k_1 }else if(k_2 > k_1){ .. 2019. 12. 13. 이전 1 다음 반응형