suno   4년 전

안녕하세요.

이 문제를 (a * b) % m = ((a % m) * (b % m)) % m 라는 것을 이용해서 풀었습니다.

그런데 a = xm + k, b = ym + l, c = zm + n으로 두고 식을 써보니, 세 항의 곱의 나머지도 각각의 나머지 연산의 곱을 다시 나머지 연산한 것과 같다는 결과를 얻었습니다. n개 항에 대해서도 성립하구요.

그래서 홀수승일때의 리턴값을 바꿔보았는데, 작동하지 않습니다. 전제가 틀린 것인가요? 아니면 코드가 잘못된 것인가요?

소스의 //working 부분은 a * 짝수 승으로 바꾸는 방식이고 정답이라고 나옵니다.

//not working부분이 세 나머지의 곱의 나머지로 푼 부분이며, '틀렸습니다'라고 뜹니다.

ho94949   4년 전

overflow가 발생할 수 있습니다.

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