HDU 取(2堆)石子游戏 2177 威佐夫博弈+尼姆博弈
来源:互联网 发布:用微信怎么传软件 编辑:程序博客网 时间:2024/05/11 14:05
#include <iostream> 取2堆#include <cmath>using namespace std;//取任意一堆的时候,为什么不对量少的那一堆取呢,因为(k2-k1)*t == k1 k1减小,这个等式永远成立不了int main(){ double t=(sqrt(5)+1)/2.0;int m,n,k,i,k1,k2,temp;while (cin>>m>>n,m+n){k=n-m;if ((int)(k*t)==m){cout<<"0"<<endl;}else{cout<<"1"<<endl;for (i=1;i<=n;i++){ k1=m-i;k2=n-i;if((int)((k2-k1)*t) == k1)cout<<k1<<" "<<k2<<endl;}for (i=n;i>0;i--){ int a=m;int b=i;if(a>b){ temp=a;a=b;b=temp;}if((int)((b-a)*t) == a) cout<<a<<" "<<b<<endl;}}}return 0;}
#include <iostream> //取m堆#include <cmath>using namespace std;int main(){ int n,a[2000],i,m,j; while (cin>>n,n) { for(i=0,m=0;i<n;i++){cin>>a[i]; m^=a[i];} if (m==0) { cout<<"No"<<endl; } else { cout<<"Yes"<<endl; for (i=0;i<n;i++) { j=m^a[i]; if (a[i]>j) { cout<<a[i]<<" "<<j<<endl; } } } }return 0;}
#include <iostream> //HDU 1849#include <cmath>using namespace std;int main(){ int n,a[1000],i,m,j; while (cin>>n,n) { for(i=0,m=0;i<n;i++){cin>>a[i]; m^=a[i];} if (m!=0) { cout<<"Rabbit Win!"<<endl; } else { cout<<"Grass Win!"<<endl;// for (i=0;i<n;i++)// {// j=m^a[i];// if (a[i]>j)// {// cout<<a[i]<<" "<<j<<endl;// }// } } }return 0;}
0 0
- HDU 取(2堆)石子游戏 2177 威佐夫博弈+尼姆博弈
- 取(2堆)石子游戏 - HDU 2177 威佐夫博弈
- HDU 2177取(2堆)石子游戏 (威佐夫博弈)
- hdu 2177 取(2堆)石子游戏(威佐夫博弈)
- HDU 2176 取(m堆)石子游戏 (尼姆博弈)
- hdu 2177 取(2堆)石子游戏 (博弈)
- HDU 2177 取(2堆)石子游戏(博弈)
- [ACM] hdu 2177 取(2堆)石子游戏(威佐夫博弈)
- hdu 2177 取(2堆)石子游戏 (威佐夫博弈)(考虑如何变成奇异局势)
- hdu 2177 取(2堆)石子游戏 (威佐夫博弈求取后状态+二分)
- [博弈] 取(2堆)石子游戏
- 取(m堆)石子游戏(尼姆博弈)
- 取(m堆)石子游戏(尼姆博弈)
- 取(m堆)石子游戏(尼姆博弈)
- HDU2177 取(2堆)石子游戏 威佐夫博弈
- HDU2177:取(2堆)石子游戏(威佐夫博弈)
- 取(2堆)石子游戏(威佐夫博弈)
- 取(2堆)石子游戏(威佐夫博弈)
- IOS 本地推送和远程推送
- ping通www.google.com但在浏览器中不能连接
- 《剑指Offer》面试题24:二叉搜索树的后序遍历序列
- 第三章第十五题
- 关于Apache的日志
- HDU 取(2堆)石子游戏 2177 威佐夫博弈+尼姆博弈
- Apache Thrift - 可伸缩的跨语言服务开发框架
- Google Java Style
- 简述word转换成pdf的过程
- effective c++ 条款06 不想编辑器生成,明确拒绝
- 批处理文件删除注册表数据
- [Hadoop源码解读](一)MapReduce篇之InputFormat
- hitTest和pointInside如何响应用户点击事件
- SpringMVC 拦截返回值,并自定义