가장 가까운 다른 소수가 소수보다 작 으면 소수가 약합니다. 동점이 있다면 소수는 약하지 않습니다.
예를 들어 , 71 은 소수이지만 75 는 복합 이므로 73 은 약한 소수 입니다.
태스크
입력 값이 2 보다 큰 소수 를 입력하면 이것이 약한 소수인지 결정 하는 컴퓨터 코드를 작성하십시오 . 이는 표준 결정 문제 이므로 두 경우 (예 : weak
및 not weak
) 각각에 대해 두 개의 고유 한 값을 출력해야합니다 .
이것은 코드 골프 이므로 태그의 표준 규칙이 적용됩니다.
OEIS
첫 번째 약한 소수는 다음과 같습니다.
3, 7, 13, 19, 23, 31, 43, 47, 61, 73, 83, 89, 103, 109, 113, 131, 139, 151, 167, 181, 193, 199, 229, 233, 241, 271, 283, 293, 313, 317, 337, 349, 353, 359, 383, 389, 401, 409, 421, 433, 443, 449, 463, 467, 491, 503, 509, 523, 547, 571, 577, 601, 619, 643, 647
다음은 약한 소수에 대한 OEIS입니다 (반환해야 함 weak
) OEIS A051635
균형 소수에 대한 OEIS는 다음과 같습니다 (반환해야 함 not weak
) OEIS A006562
다음은 강력한 소수에 대한 OEIS입니다 (반환해야 함 not weak
) OEIS A051634
답변
젤리 , 7 바이트
Æn+Æp>Ḥ
설명
See if
Æn the next prime
+Æp plus the previous prime
>Ḥ is greater than 2n
보너스, 변경 등 >
으로 =
또는 <
각각 평형 강한 소수에 대해 검사한다.
답변
Mathematica, 24 바이트
n=NextPrime;2#+n@-#<n@#&
는 NextPrime
내장 (AB는?) 그것을 부정적인 인수를 공급함으로써 이전의 소수를 계산하는 데 사용할 수 있습니다.
답변
젤리 , 9 바이트
ḤÆRạÞ⁸ḊḢ>
반환 1
약하고 대한 0
(반품 약한하지 않거나 균형 1
의 입력 2
)
방법?
ḤÆRạÞ⁸ḊḢ> - Link: prime number > 2, p
Ḥ - double -> 2*p
ÆR - yield primes between 2 and 2*p inclusive
⁸ - chain's left argument, p
Þ - sort by:
ạ - absolute difference (i.e. distance from p)
Ḋ - dequeue (removes p from the list, since it has distance zero)
Ḣ - head (gives us the nearest, if two the smallest of the two)
> - greater than p?
답변
PHP , 69 바이트
약한 소수를 위해 하나를 인쇄하고 약한 소수를 위해 아무것도 인쇄하지 않습니다
for(;!$t;$t=$d<2)for($n=$d=$argn+$i=-$i+$w^=1;$n%--$d;);echo$n<$argn;
답변
옥타브, 93 84 바이트
바이트를 절약 해 준 @LuisMendo와 @ rahnema1에게 감사합니다!
function r=f(x);i=j=x;do--i;until(i<1|isprime(i));do++j;until(isprime(j));r=x-i<j-x;
답변
답변
MATL , 13 바이트
qZq0)G_Yq+GE>
그렇지 않으면 1
약한 경우 출력 합니다 0
.
설명
q % Implicit input, Subtract 1
Zq % Vector of primes up to that
0) % Get last one
G % Push input again
_Yq % Next prime
+ % Add
G % Push input
E % Multiply by 2
> % Greater than? Implicit display