#include<stdio.h> #include<stdlib.h> long check(long r) { long x=1; while((r/2)%2==0) { x++; r=r/2; } if(r!=1) return(0); else return(x); } long count(long n) { int k=1; while(!check(k*n+1)) k++; } int main() { long n,x; while(scanf("%ld",&n)!=EOF) { if(n==1||n%2==0) printf("2^? mod %ld=1\n",n); else { x=count(n); printf("2^%ld mod %ld=1\n",x,n); } } return 0;

评论