skajd1   4년 전

우선 문제는 맞았습니다. 풀이를 비슷한 방법으로 두가지 했는데, 위에껀 셀프넘버 판별할 때 바로 함수를 쓰는 코드고, 아래껀 d(n)을 미리 행렬에 대입해둔 뒤 그 행렬을 셀프넘버 판별할 때 이용하는 코드입니다.

위 아래가 실행시간이 다른데, ( 행렬 이용하는 쪽이 훨씬 빠릅니다.) 그 이유가 궁금합니다.

djm03178   4년 전

d 함수는 굉장히 많은 나눗셈/나머지 연산으로 이루어져 있기 때문에 상당히 무거운 연산입니다.

위쪽 코드에서는 이런 연산을 1억 번이나 수행하게 되고, 아래 코드에서는 1만 번만 수행하면 되기 때문에 큰 차이가 납니다.

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