hdu Joseph
1 #include <cstdio> 2 #include <iostream> 3 #include <algorithm> 4 using namespace std; 5 6 int a[20000]; 7 8 bool f(int k,int m) 9 { 10 int s=0,e=k-1; 11 for(int i=2*k; i>k; i--) 12 { 13 int k1=(m-1)%i; 14 if(k1>=s&&k1<=e) 15 { 16 return false; 17 } 18 s=((s-m)%i+i)%i; 19 e=((e-m)%i+i)%i; 20 } 21 return true; 22 } 23 24 void inti() 25 { 26 for(int i=1; i<14; i++) 27 { 28 int j=1; 29 while(1) 30 { 31 if(f(i,j)) {a[i]=j;break;} 32 j++; 33 } 34 35 } 36 } 37 int main() 38 { 39 int k; 40 inti(); 41 while(scanf("%d",&k)!=EOF) 42 { 43 if(k==0) break; 44 printf("%d\n",a[k]); 45 } 46 return 0; 47 }