반응형
이번에도 역시 상세한 문제는 여기서 확인 하실 수 있습니다.
간단하게 설명하면 숫자가 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 의 기본은 false 입니다. 그리고 각 값은 -1한 위치에 넣습니다. 이유는 Array의 값 위치는 0 부터 시작하기 때문입니다.)
그리고 false 찾아서 그 위치를 반환합니다. 반환할때 +1 해주는 것도 잊지 않습니다.
반응형
'2023년 이전 > Codility' 카테고리의 다른 글
Codility - Lesson 4 PermCheck (0) | 2019.11.12 |
---|---|
Codility - Lesson 3 TapeEquilibrium (0) | 2019.11.11 |
Codility - Lesson 3 FrogJmp (0) | 2019.11.07 |
Codility - Lesson 2 Cyclic Rotation (0) | 2019.11.06 |
Codility - Lesson 2 OddOccurrencesInArray (0) | 2019.11.06 |