음수가 아닌 정수가 주어지면, N모든 첫 번째 N소수에 강력한 의사 프라임 인 가장 작은 홀수 양의 정수를 출력하십시오 .
OEIS 시퀀스 A014233 입니다.
테스트 사례 (인덱싱)
1 2047
2 1373653
3 25326001
4 3215031751
5 2152302898747
6 3474749660383
7 341550071728321
8 341550071728321
9 3825123056546413051
10 3825123056546413051
11 3825123056546413051
12 318665857834031151167461
13 3317044064679887385961981
에 대한 테스트 사례 N > 13해당 값을 아직 찾지 못해 사용할 수 없습니다. 순서대로 다음 용어를 찾으면 OEIS에 제출하십시오!
규칙
N인덱스가 없거나 인덱스가없는 값을 선택할 수 있습니다 .- 솔루션이 언어의 정수 범위 내에서 표현할 수있는 값 (
N = 12부호없는 64 비트 정수까지) 에서만 작동하는 것이 허용 되지만, 언어가 임의의 길이의 정수를 지원한다는 가정하에 모든 입력에 대해 이론적으로 솔루션이 작동해야합니다.
배경
모든 긍정적 인 경우에도 정수 x형태로 기록 될 수 이상하다. 및 반복적으로 나눔으로써 계산 될 수 몫까지 (2)에 의해 더 이상 2로 나눌 수없는 그 최종 지수이고, 시간 (2)의 분할 개수이다x = d*2^sddsndsn .
양의 정수 n가 소수이면 Fermat의 작은 정리 는 다음과 같습니다.
어떤에서 유한 체 Z/pZ (여기서 p일부 소수이다)의 유일한 제곱근은 1있습니다 1및 -1(또는, 동등하게, 1그리고p-1 ).
우리는 다음과 같은 두 개의 문 중 하나가 소수에 대한 진실해야한다는 것을 증명하기 위해이 세 가지 사실을 사용할 수 있습니다 n(여기서 d*2^s = n-1및 r일부 정수에서이다 [0, s)) :
밀러 - 라빈 소수 판별법은 상기 제 대우의 동작을 테스트하여,베이스가있는 경우 a, 상기 조건 모두 거짓이되도록하고 n프라임 아니다. 이 기지 a를 증인 이라고합니다 .
이제 모든베이스를 테스트 [1, n)하는 것은 계산 시간이 엄청나게 비쌉니다 n. Miller-Rabin 테스트에는 확률 필드에서 무작위로 선택된 일부만 테스트하는 확률 적 변형이 있습니다. 그러나 테스트는 단지 주요한 것으로 밝혀졌습니다.a 베이스 것으로 충분하므로 효율적이고 결정적인 방식으로 테스트를 수행 할 수 있습니다. 실제로 모든 소수의 염기를 테스트 할 필요는 없습니다. 특정 숫자 만 필요하며 해당 숫자는 소수에 대해 테스트 할 값의 크기에 따라 다릅니다.
소수의 소수 염기가 테스트되지 않으면 테스트에서 복합성이 입증되지 않는 홀수 복합 정수인 오 탐지가 발생할 수 있습니다. 구체적으로, a기수가 홀수의 합성 수의 합성 성을 증명하지 못하면, 그 수 를 base에 대한 강력한 의사 프라임 이라고합니다 a. 이 과제는 모든 N소수 에 대해 소수 소수 이하의 홀수 복합 수를 찾는 것에 관한 것입니다 (소수점이 소수에 해당하는 모든 소수 에 대해 유사 유사 수임이라고 말하는 것과 동일 함 N). .

