jangluna   2년 전

반례가 있을까요?


통과한 코드(정답코드) 와 비교해도 출력이 다른 부분이 없어보입니다.ㅠ

wizardrabbit   2년 전

안녕하세요? 예제 1번이 주어졌을 때의 정답과 출력입니다.

입력:
2
6
12

정답:
3
16

출력:
3
16
0

틀린 이유 한 줄 요약: trim() 미사용으로 인해 입력된 데이터에 붙은 '\n' 이 제거되지 않아 코드가 오작동하였습니다.

Node.js에서 trim() 미사용으로 인해 틀리는 경우는 이미 제가 답변을 한 적이 있으므로 해당 답변의 링크를 대신 첨부하겠습니다: https://www.acmicpc.net/board/...

▼ 이해를 돕기 위해 trim()을 사용하지 않은 질문자님의 코드에서 lines 변수에 값이 어떻게 저장되는 지를 적어보았습니다.

toString() 사용 이후:
'2\n6\n12\n'

split('\n') 사용 이후:
['2', '6', '12', '']

map(Number) 사용 이후:
[2, 6, 12, 0]

shift() 사용 이후:
[6, 12, 0]

결론적으로 toString() 사용 이후에 맨 끝에 있던 불필요한 '\n'이 남아 shift() 사용 이후 0 값이 들어가게 되었습니다.

jangluna   2년 전

wizardrabbit

trim 사용을 좀 해야겠군요...

문제에 몰두하다가 사소한 부분을 놓쳤네요 감사합니다!!!

댓글을 작성하려면 로그인해야 합니다.