반응형
0. 문제
주어진 리스트 A는 N개의 서로 다른 숫자로 이루어져 있다.
그리고 이 리스트에는 [1..(N + 1)] 이렇게 1부터 N+1까지의 숫자가 무작위로 섞여있는데 항상 하나의 숫자가 빠져있다.
이 빠진 숫자를 구하시오.
1. 답변
주의할 점은...
- 리스트 아이템이 하나일 경우
- 첫 번째(1) 혹은 마지막(N+1)이 빠졌을 경우
이걸 감을 못잡아서 계속 고쳤다...
def solution(A): if A: sorted_A = sorted(A) for idx, n in enumerate(sorted_A, 1): if idx != n: return idx return sorted_A[-1]+1 else: return 1
enumerate() 는 내장함수인데 실제 업무에서도 굉장히 유용하게 쓰고 있다.
반응형
'개발 > 알고리즘 문제' 카테고리의 다른 글
[Codility] FrogJmp (4) | 2017.11.07 |
---|---|
[Codility] TapeEquilibrium (4) | 2017.11.06 |
[Codility] CyclicRotation (4) | 2017.11.04 |
[Codility] OddOccurrencesInArray (4) | 2017.11.02 |
[Codility] BinaryGap (4) | 2017.11.01 |
댓글