https://app.codesignal.com/interview-practice/task/PLCrGrJmBxQdj8QKX/description
✔️문제 요약
1.연속된 array중 한가지가 빠져있음, 이 한 가지를 return 하는 함수 작성
✔️풀이 방법
1.리스트로 풀이를 생각하다가, math 카테고리에 있는 점을 잘 생각해봤고 합차를 이용해서 구하면 될 것이라는 생각을 했다.
2.단순히 actual_total - missing_total을 했더니, [0] 같은 경우를 고려하지 못해서
리스트에 0이 포함된 경우랑 안포함된 경우로 나누어서 풀이할 수 있었다.
def solution(arr):
actual_total=0
if 0 not in arr:
return 0
else:
for i in range(min(arr),max(arr)+1):
actual_total += i
missing_total=sum(arr)
if missing_total==actual_total:
return max(arr)+1
else:
return actual_total-missing_total
✔️고찰
-엄청 단순한 문제를 복잡하게 푼 것 같기도 한데, 이는 코드 리뷰 시간에 솔루션을 보면서 수정해놔야겠다.
그래도 요 며칠 쉬운 구문을 작성해보며 for문에 대한 이해도가 많이 높아져서 데이터 분석 전처리에도 주도적으로 for문을 작성해서 새 함수를 만들고 할 수 있게 되었다!
'코딩테스트 > 코딩테스트 Python' 카테고리의 다른 글
[CodeSignal] findProfession (Python) (0) | 2022.09.19 |
---|---|
[CodeSignal] rotateImage (Python) (0) | 2022.09.14 |
[CodeSignal] singleNumber (Python) (0) | 2022.09.05 |
[CodeSignal] amendTheSentence (Python) (0) | 2022.09.05 |
[CodeSignal] List Beautifier (Python) (0) | 2022.09.05 |
댓글