POJ 1067 取石子游戏

发布时间:2016-12-7 22:30:21 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"POJ 1067 取石子游戏",主要涉及到POJ 1067 取石子游戏方面的内容,对于POJ 1067 取石子游戏感兴趣的同学可以参考一下。

参考Beatty定理 根据题目可以得到An、Bn,且,这两个集合具备两个特点:1、严格上升,2、划分Z       认为An、Bn是Beatty序列。       Beatty定理有:     An=[na]     Bn=[nb]     1/a+1/b=1       对应题目:     An=[na]     Bn=An+n=[na]+n=[na+n]=[n(a+1)]=[nb]     则:1/a+1/(a+1)=1     解得:a=(1+sqrt(5))/2 代码: #include <iostream> #include<cmath> using namespace std; int main() { double arph=(sqrt(5.0)+1.0)/2.0; int a,b; while(cin>>a>>b) { if(b<a) swap(a,b); int n=b-a; int c=floor(n*arph); if(c==a) cout<<0<<endl; else cout<<1<<endl; } return 0; } http://blog.sina.com.cn/s/blog_51cea4040100ivvo.html

上一篇:adb server is out of date. killing...
下一篇:解析#pragma指令

相关文章

相关评论