chiller123   10년 전

일단 Accept을 받긴 했습니다만,

틀린 코드에서 왜 오답판정이 뜨는지 모르겠습니다.

0이 아닌 가장 낮은 자리수를 구하면 되므로, 매번 mod 10을 하여 일의 자리만 넘겨주었는데요.

왜 이 방법은 오답인가요?

august14   10년 전

14! = 87178291200

0이 아닌 가장 낮은 수는 2고, 위 소스에서 2 * 15 = 30, 30/10 = 3에서 15!의 0이 아닌 가장 낮은 수를 3이라고 판정하게 되는데

15! =  1307674368000

으로 틀립니다.

10으로 나눈 나머지로는 앞에 어떤수가 있는지에 대한 모든 정보를 나타낼 수 없습니다.

100으로 나눈 나머지를 저장하면 12 * 15 = 180이므로 답이 8이 되겠지만, 이것도 N이 커지면 답이 틀려질거구요

chiller123   10년 전

그런 부분을 간과했군요.. .감사합니다

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