HDU 1527 2177(威佐夫博奕)
来源:互联网 发布:微店和淘宝的付款方式 编辑:程序博客网 时间:2024/06/04 20:04
有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。
分析:假设两堆石子的数量分别用m,n来表示,(m,n);m
#include<cstdio>#include<algorithm>#include<cmath>using namespace std;int main(){ int ak,bk,k; while(scanf("%d%d",&ak,&bk)!=EOF) { if(ak>bk) swap(ak,bk); int temp=(bk-ak)*(sqrt(5.0)+1)/2; if(temp==ak) printf("0\n"); else printf("1\n"); } return 0;}
2177 在1527的基础上增加了,必胜时输出第一次取完后,两堆石子剩余的情况。因为有两种取法,我们只要分两种情况。1、同时从两堆中取相同的数目,只需要1-m遍历一遍,筛选符合条件的取法 ;2、从一堆中取,从1-n,遍历进行筛选
#include<cstdio>#include<cmath>#include<algorithm>using namespace std;int boyi(int x,int y){ int t=(y-x)*(sqrt(5.0)+1)/2; if(t==x) return 0; else return 1;}int main(){ int a,b,x,y,m,n; while(scanf("%d%d",&a,&b),a&&b) { if(a>b) swap(a,b); printf("%d\n",boyi(a,b)); if(boyi(a,b)){ for(int i=1;i<=a;i++){//同时从两堆中取 x=a-i; y=b-i; if(!boyi(x,y)){//只需使剩下的是奇异局势,即留给对方的是必败态,那么自己总面对的必胜态 printf("%d %d\n",x,y); break; } } for(int i=1;i<=b;i++){//从一堆中取 int t=b-i; m=(a>t)?t:a; n=(a>t)?a:t; if(!boyi(m,n)){//同上 printf("%d %d\n",t,a); break; } } } } return 0;}
0 0
- HDU 1527 HDU 2177 威佐夫博奕
- HDU 1527 2177(威佐夫博奕)
- hdu 1527 升级 2177(威佐夫博奕)
- 威佐夫博弈hdu 1527 && hdu 2177
- 威佐夫博弈(hdu 1527和2177)
- HDU 1527 取石子游戏(威佐夫博奕)
- HDU1527(威佐夫博奕)+Hdu 2177
- HDU 1527 威佐夫博奕
- HDU 2177 HDU 2177取(2堆)石子游戏 (威佐夫博奕)
- HDU - 2177 取(2堆)石子游戏 (威佐夫博奕)
- hdu 1527取石子游戏(威佐夫博奕)(解题报告)
- hdu 1527 取石子游戏(Wythoff Game/威佐夫博奕)
- HDU 1527 、POJ 1067 取石子游戏(威佐夫博奕)
- POJ 1067 HDU 1527 取石子游戏(威佐夫博奕)
- hdu 1527(威佐夫博弈)
- hdu威佐夫博奕
- HDU 1527
- hdu-1527
- Unity 3D 画出透视相机的视景体
- 获取Log到指定文件目录下
- 二叉链表和三叉链表
- java变量初始化顺序
- 邮件发送代码 动态对象
- HDU 1527 2177(威佐夫博奕)
- Android35_动画资源
- Android Studio com.android.dex.DexException: Multiple dex files define(重复引用包)
- ecshop中使用ueditor(或其他特效)報錯:b.replace is not a function/b[d].split is not a function
- IE环境下判断IE版本的语句...[if lte IE 6]……[endif][if lte IE 7]……[endif]
- Windows环境下Python v2.7.9,Notepad++编写程序中涉及中文,执行时CMD中显示乱码的解决办法
- float 与double类型范围和精度
- Linux to read the Processor model, physical cores, virtual cores and L1, L2 cache
- Android36_样式主题与自定义View