minhas2   4년 전

문제는

복도에 n개의 전구가 있으면 모든 전구가 꺼져있을때 복도를 n번 왕복한다.

i번째 갈때 그는 i로 나누어 떨어지는 위치에 있는 스위치만 누른다.

마지막 전구의 최종 상태를 알아내자. 꺼져있을까 켜져있을까?

라는 문제인데

약수의 갯수가 홀수개면 켜져있고, 짝수개면 꺼져있다고 판단하기위해서

divorce라는 약수 쌍의 갯수를 카운팅하는 함수를 구현해서 재귀호출방식으로 계속 함수를 호출하다가

약수가 중복되거나 제곱으로 겹쳐지는경우 종료하도록 하였습니다.(예를들어 4곱하기 6를 거쳤는데 6곱하기 4를 또 함수로 계산할려는경우나 6곱하기 6인 경우)

근데 자꾸 스텍오버플로우가 나요...

입력은 2147483648로 2의 31승-1로 했구요..

이 문제에서 최대 n의 범위는 2의 32승-1입니다

뭐가원인인지좀 봐주세요 ㅠㅠ

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