[ 문제 상황 ]
병합 정렬을 하던 중..
N = input()
mylist = []
for i in range(N):
mylist.append(int(input()))
# 병합 정렬 코드
print(merge(mylist))
2, 3, 10, 1 을 input 했는데
1, 10, 2, 3 가 output으로 뜨는 겁니다.
디버깅을 아무리 돌려봐도
컴퓨터가 2 > 10 으로 처리를 하는 겁니다.
처음에는 걸비지 메모리 문제인가 싶어서
VS CODE를 껏다가 켜보고
다른 예시를 넣어봐도 알 수 없었습니다.
[ 해결 ]
지인에게 코드를 보여줬더니
아니 글쎄 int(input()) 이 아니라 input() 으로 받았더라고요
컴퓨터는 '2' > '10' 으로, 문자열 사전적 순서대로 처리를 하고 있던 거였습니다.
진짜 혼자 몇시간을 썼는지..
정말 잊기 어려운 실수 입니다.
'근황 토크 및 자유게시판' 카테고리의 다른 글
pandas에서 xlsx 파일 열려면 (0) | 2022.06.01 |
---|---|
[TIP] 파이썬 모듈에 대한 네이밍 규칙 (0) | 2022.05.25 |
[ TIP ] 문제에서 1부터 시작할 때 (0) | 2022.05.13 |
[스쿨선발대] 데이터 사이언티스트 시작하다. (0) | 2022.05.07 |
[자유칼럼] 낯설게 보기, 새롭게 보기 (0) | 2022.05.07 |