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 }
View Code

 

你可能感兴趣的:(HDU)