GolfScript (23 자)
{:^((1${\.**2^?%}+*}:f;
존재하지 않는 역수에 대한 센티넬 결과는 0
입니다.
xφ(2n)≡1(mod2n)x−1≡x2n−1−1(mod2n)
x2k−1=(x2k−1−1)2×xk=1
{1\:^(@{\.**2^?%}+*}:f;
이나 k=2
와
{:^((1${\.**2^?%}+*}:f;
다른 접근 방식을 사용하고 있지만 센티넬이 더 어렵습니다.
xy≡1(mod2k−1)xy∈{1,1+2k−1}(mod2k)xx(y+xy−1)≡1(mod2k)y′=(x+1)y−1
부터0x≡1(mod20)
x(1−(x+1)nx)≡1(mod2n)
x+1
그것은 19 문자 기능을 제공합니다
{1$)1$?@/~)2@?%}:f;
xx&1
1
{1$.1&+1$?@/~)2@?%}:f;
이것은 의 센티넬 값을주는 것으로 보입니다.02n−1 아직 입증하지 못했습니다.
한 걸음 더 나아가서 의 센티넬을 보장 할 수 있습니다.01−(x+1)n(1) - (1)엔:
{1$.1&*)1$?@/~)2@?%}:f;
그것은 코드 길이에 대한 오일러 정리의 직접적인 적용과 관련이 있지만, 큰 경우 성능이 떨어질 것입니다 엔. 다른 방법으로 인수를 취 n x f
하면 한 문자를 저장하고 22 문자를 얻을 수 있습니다 .
{..1&*)2$?\/~)2@?%}:f;