본문 바로가기
반응형

kotlin72

Codility - Lesson 4 PermCheck 자세한 문제는 여기서 확인하시면 됩니다. 1부터 시작하는 간단하게 순열인지 아닌지 확인 하는 문제입니다. fun solution(A: IntArray): Int { // write your code in Kotlin var B = BooleanArray(A.size) for(i in A.indices){ if(A[i] > B.size){ return 0; } B.set(A[i]-1,true) } for(i in B.indices){ if(B[i] == false){ return 0; } } return 1; } 우선 1부터 시작하기 때문에 A 배열의 값중 A배열의 사이즈보다 큰 값이 있을 경우 순열이 아니게 됩니다. 이유는 A 배열의 크기가 3일 경우 A배열이 순열이려면 {1,2,3}되어야 하는데 4가 .. 2019. 11. 12.
Codility - Lesson 3 TapeEquilibrium 이번 문제도 여기서 확인 할 수 있습니다. 간단하게 array에서 일정 위치까지 두 파트로 나눠서 더한 값들의 차이의 절대 값중 작은 값을 return 하는 문제 입니다. fun solution(A: IntArray): Int { // write your code in Kotlin var min = 1; for(i in 1.. A.size-1){ var before = 0; for( j in 0 .. i-1){ before = before+ A[j] } var after = 0; for(k in i .. A.size-1){ after = after+A[k]; } var ans = Math.abs(before - after) if(min > ans){ min = ans; } } return min } 간단.. 2019. 11. 11.
Codility - Lesson3 PermMissingElem 이번에도 역시 상세한 문제는 여기서 확인 하실 수 있습니다. 간단하게 설명하면 숫자가 1부터 N+1까지 있는데 그중 없는 값을 반환하는 문제 입니다. code 보시겠습니다. fun solution(A: IntArray): Int { // write your code in Kotlin var B = BooleanArray(A.size+1) for(i in A.indices){ B.set(A[i]-1,true) } for(i in B.indices){ if(B[i] == false){ return i+1 } } return 0 } 간단하게 생각했습니다. A보다 1큰 Boolean array를 만들고 1부터 N+1까지 값이 있는 경우 B array의 그 위치를 true로 변경합니다.(Boolean Array .. 2019. 11. 8.
Codility - Lesson 3 FrogJmp Frog Jump에 관한 문제는 여기서 확인할 수 있습니다. 간단하게 개구리가 X에서 Y까지 D만큼 점프해서 몇번 만에 가는지 문제입니다. fun solution(X: Int, Y: Int, D: Int): Int { // write your code in Kotlin var jumpX = X var jumpCount = 0 while(true){ if(jumpX >= Y){ break } jumpX = jumpX + D jumpCount++ } return jumpCount } 간단하게 생각해서 작업을 했는데, 이런 ... 55%가 나왔습니다. 다시 생각해보니 이건 while문을 쓸 필요가 없는 문제 였습니다. 그 방법은 fun solution(X: Int, Y: Int, D: Int): Int { /.. 2019. 11. 7.
반응형