iyeaaa   1년 전

18줄에서 2^31 넘어가면 0으로 만드는데 도저히 이유를 모르겠어요.

herdson   1년 전

의미 없는 것 같네요. 문제에 경우의 수는 2^31보다 작다고 써있으니까요

iyeaaa   1년 전

근데 저 조건을 넣지 않으면 런타임 에러가 생깁니다...

herdson   1년 전

찾아보니 스위프트는 오버플로우 상황일 때 오류를 내도록 되어있습니다. https://hyerios.tistory.com/17...

오버플로우 연산자를 사용해서 런타임 에러를 예방할 수 있을 것 같습니다.

leeingyun96   3달 전

정답인 경우의 수가 2^31보다 작다고 했지 정답이 아닌 경우의 수가 2^31보다 작다고는 하지 않아서 그런 거 같습니다.

예를 들어 이런 입력에서 정답(1025를 만드는 경우의 수)은 0인데 1024를 만드는 경우의 수는 12,070,289입니다. 풀이 과정에서 오버플로우 오류가 날 수도 있습니다.

정답이 2^31 미만이라는 건 이런 수는 정답을 구성하는 데에 쓰이지 않는다는 뜻이니, 아예 0으로 날려버려도 AC 판정에는 문제가 없을 것이고요.

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