else if (arr[++k] != n) {
이게 만족하는 순간은 k 가 i+1 일때이어야 할 것 같은데.. arr[i+1] 은 값을 넣지 않았기 떄문에 쓰레기값일 것 같습니다.
그러면 쓰레기 값이 뭐냐에 따라서 값이 나올수도 안나올수도 있을 것 같네요. arr[++k] != n 가 아니라 index 로 종료를 체크하면 어떨까 합니다.
그리고
지금 코드는 한번 나왔던 수가 나오면 그 이후가 정말 사이클이 되는지 확인을 하는데
n <- (n * nn) % p 연산의 특성상 한번 나왔던 수가 나오면 현재값까지 무조건 싸이클입니다.
leewwo2o 6년 전
예시는 맞고 10퍼에서 틀렸다고 나오네요 어디부분을 고쳐야 할까요? 아니면 반례가 무엇일까요?