hdu 1527 取石子游戏 博弈

来源:互联网 发布:java工程师简历 编辑:程序博客网 时间:2024/06/06 17:09

根据必败点无法转移的必败点暴力找到答案

#include<stdio.h>const int N=1000;int mp[N][N];void xiugai(int x,int y){for(int i=0;i<N;i++)mp[x][i]=1,mp[i][y]=1;for(;x<N&&y<N;x++,y++)mp[x][y]=1;}int main(){freopen("output.txt","w",stdout);for(int i=0;i<N;i++)for(int j=0;j<N;j++)if(mp[i][j]==0){printf("%d %d--\n",i,j);xiugai(i,j);break;}return 0;}
1 2

3 5

4 7

6 10

8 13

9 15

但找不到他们的关系,没想到竟然是黄金比例

#include<stdio.h>#include<math.h>const double gold=(sqrt(5.0)+1)/2;int main(){int a,b;while(~scanf("%d %d",&a,&b)){if(a<b){a^=b;b^=a;a^=b;}int c=a-b;int d=gold*c;if(d==b)printf("0\n");elseprintf("1\n");}return 0;}


0 0
原创粉丝点击