基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题

有2堆石子。A B两个人轮流拿,A先拿。每次可以从一堆中取任意个或从2堆中取相同数量的石子,但不可不取。拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出2堆石子的数量,问最后谁能赢得比赛。

例如:2堆石子分别为3颗和5颗。那么不论A怎样拿,B都有对应的方法拿到最后1颗。

Input

第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 10000)

第2 - T + 1行:每行2个数分别是2堆石子的数量,中间用空格分隔。(1 <= N <= 10^18)

Output

共T行,如果A获胜输出A,如果B获胜输出B。

Input示例

3

3 5

3 4

1 9

Output示例

B

A

A

解题思路:

如果 这个题目中数据范围不是很大的话 直接乘以 (sqrt(5)+1)/2 就行了,但是这个题目中,数据范围太大,直接乘的话会有精度问题,所以我们就减少精度问题,就将 0.618033988749894848204586834...0.618033988749894848204586834... 拆成整数放进数组里,然后通过乘法来减少精度的损失。

#include

#include

#define ll long long

using namespace std;

ll inf=1000000000;

ll a[3]={618033988,749894848,204586834};//模拟百、十、个位

int main()

{

ll x,y,t;

scanf("%lld",&t);

while(t--)

{

scanf("%lld%lld",&x,&y);

if(x

ll dis=x-y;

ll t0=dis/inf;//模拟十位

ll t1=dis%inf;//模拟个位

ll sum=t1*a[2];//个位

sum=t0*a[2]+t1*a[1]+sum/inf;//十位

sum=t0*a[1]+t1*a[0]+sum/inf;//百位

sum=dis+t0*a[0]+sum/inf;//dis+后面小数进位产生的结果

if(sum==y)

printf("B\n");

else

printf("A\n");

}

return 0;

}

51nod--1185 威佐夫游戏 V2 (博弈, 乘法模拟)

题目: 1185 威佐夫游戏 V2 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中 ...

51nod1185 威佐夫游戏 V2【博弈论】

有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中取相同数量的石子,但不可不取.拿到最后1颗石子的人获胜.假设A B都非常聪明,拿石子的过程中不会出现失误.给出2堆石子的数量, ...

51NOD 1185 威佐夫游戏 V2&lpar;威佐夫博弈&rpar;

1185 威佐夫游戏 V2  基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中取 ...

51Nod 1185 威佐夫游戏 V2

有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中取相同数量的石子,但不可不取.拿到最后1颗石子的人获胜.假设A B都非常聪明,拿石子的过程中不会出现失误.给出2堆石子的数量, ...

(博弈论 高精度小数)51NOD 1185 威佐夫游戏 V2

有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中取相同数量的石子,但不可不取.拿到最后1颗石子的人获胜.假设A B都非常聪明,拿石子的过程中不会出现失误.给出2堆石子的数量, ...

51nod--1072 威佐夫游戏 (博弈论)

题目: 1072 威佐夫游戏 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中取相同 ...

51Nod 1072:威佐夫游戏 (威佐夫博奕)

1072 威佐夫游戏  基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中取相同数 ...

51Nod 1072 威佐夫游戏

题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1072 有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆 ...

(博弈论)51NOD 1072 威佐夫游戏

有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中取相同数量的石子,但不可不取.拿到最后1颗石子的人获胜.假设A B都非常聪明,拿石子的过程中不会出现失误.给出2堆石子的数量, ...

随机推荐

&lbrack;转载&rsqb; ffmpeg超详细综合教程——摄像头直播

本文的示例将实现:读取PC摄像头视频数据并以RTMP协议发送为直播流.示例包含了 1.ffmpeg的libavdevice的使用 2.视频解码.编码.推流的基本流程 具有较强的综合性. 要使用liba ...

android代码片段一

1.Android判断是Pad或者手机 public boolean isTabletDevice() { TelephonyManager telephony = (TelephonyManager ...

Windows8&period;1和Ubuntu14&period;04双系统卸载Ubuntu參考教程&lbrack;图&rsqb;

我之前编写并公布了这篇教程,而本文提供的卸载Ubuntu方法适用于这篇教程,其它方法安装的Ubuntu可适当 ...

虚拟机克隆,并设置新的ip

6.1克隆新的虚拟机 选中某个虚拟机-à右键à管理à克隆 选择下一步 选择下一步 点击完成 6.2修改主机名 [root@hadoop3 ~]# vim/etc/sysconfig/network 将 ...

win10配置java开发环境

安装java(JDK) Oracle官网下载地址 选择JavaSE > Downloads 选择最新版本 > Download Accept License Agreement 选择要下载 ...

Android AsyncTask将讲解

原型:AsyncTask Params 表示传入参数类型 Progress表示处理参数类型 Result表示返回类型 new Async ...

Java读取文件-BufferedReader&sol;FileReader&sol;InputStreamReader&sol;FileInputStream的关系和区别

一.Java读取和存储文件数据流 Java读取文件,实际是将文件中的字节流转换成字符流输出到屏幕的过程   这里面涉及到两个类:InputStreamReader和OutputStreamWriter ...

day2-pycharm创建项目,driver下载和浏览器设置

对于ie需要设置,才能使用ie做测试 火狐的使用不能超过43版本,ie11现在有多次弹出alert无法识别其内容的问题 https://github.com/SeleniumHQ/selenium/w ...

&lbrack;Linux&rsqb;如何查看系统的Time Slice

Linux Time Slice 首先,.config中查看kernel configure中CONFIG_HZ值,比如100 然后,查看include/linux/sched/rt.h或者inclu ...

Knight Tournament 合并区间

Hooray! Berl II, the king of Berland is making a knight tournament. The king has already sent the me ...

威佐夫博弈matlab,51nod1185 威佐夫游戏 V2 (模拟乘法)相关推荐

  1. matlab怎么画威布尔分布,matlab绘制威布尔分布曲线.docx

    matlab绘制威布尔分布曲线 MATLAB绘制威布尔分布曲线 威布尔分布概率密度函数: 威布尔分布概率分布函数: 其中m>0,是尺度参数也叫比例参数,a>0是形状参数.X是随机变量,是未 ...

  2. 【小组专题二:博弈论入门综述(1)】NP状态 | SG函数 | 巴什博奕、威佐夫博弈、斐波那契博弈、Nim游戏、SJ定理

    博弈论综述[1] 前言 博弈与博弈论 博弈树 NP状态 SG函数(Sprague-Grundy) Sprague-Grundy Theorem 巴什博奕 Bash Game 威佐夫博弈 扩展威佐夫博弈 ...

  3. 从3,5,7游戏看为佐夫博弈

    这个问题是我在监考时闲来无事,一位同事突然跟我说了这么一个游戏,我起初以为是简单的为佐夫博弈,没想到一丁点的改动,竟然会是大相径庭! 题意: 现在进行以下游戏,规则如下 有3堆纸团,分别为3,5,7, ...

  4. 韦布尔分布 matlab,MATLAB绘制威布尔分布曲线

    MATLAB绘制威布尔分布曲线 MATLAB绘制威布尔分布曲线 威布尔分布概率密度函数: 威布尔分布概率分布函数: 其中m>0,是尺度参数也叫比例参数,a>0是形状参数. X是随机变量,是 ...

  5. matlab拟合韦布尔分布,MATLAB绘制威布尔分布曲线..docx

    MATLAB绘制威布尔分布曲线. MATLAB绘制威布尔分布曲线 威布尔分布概率密度函数: 威布尔分布概率分布函数:其中m>0,是尺度参数也叫比例参数,a>0是形状参数.X是随机变量,是未 ...

  6. 洛谷P2252 取石子游戏(威佐夫博弈)

    题目背景 无 题目描述 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子:二是可以在两堆中同时取走相同数量的石子.最后 ...

  7. 威佐夫博弈:百练OJ:1067:取石子游戏

    威佐夫博弈(Wythoff's game):有两堆各若干个物品,两个人轮流从任一堆取至少一个或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜. 百练OJ:1067:取石子游戏 ...

  8. POJ-1067取石子游戏,威佐夫博弈范例题/NYOJ-161,主要在于这个黄金公式~~

    取石子游戏 Time Limit: 1000MS   Memory Limit: 10000K              Description 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取 ...

  9. 杭电acm 2177 取(2堆)石子游戏(威佐夫博弈)

    取(2堆)石子游戏                       Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 ...

最新文章

  1. Python之collections容器数据类型
  2. 终于!《iOS 全埋点解决方案》正式出版
  3. centos7+tomcat部署JavaWeb项目超详细步骤
  4. python删除字符串_Python3 - 删除字符串中不需要的字符
  5. 用excel数据写入html,如何使用epplus将我的html表格写入excel文件
  6. 初学Golang:Go 的数据类型及常见特性
  7. 何为启发式算法——退火算法,蚁群算法,遗传算法
  8. Delphi2007使用心得
  9. 【补充】Python爬虫:为什么要使用IP代理
  10. 基于.net实现F4一键杀死指定进程(龙之谷秒掉器)
  11. 台式计算机无线网经常掉线,台式机无线上网经常断网怎么办呢
  12. 简单计算空气质量指数
  13. [教程] 关于一种比较特别的线段树写法
  14. python模块安装包_制作python模块安装包[转载自刘天斯]
  15. 马来西亚房产是否值得投资?
  16. 云宏脚踏实地做自主中国云,厚积薄发终见锋芒
  17. latex解决存在/任意/非符号如何打
  18. Create WAP Push SMS Messages
  19. 给女友的网页小惊喜,(生日,周年,表白通用) ☞谁说程序员不懂浪漫
  20. 如何修改pdf文件中文字的大小及颜色

热门文章

  1. 阿里官方Java代码规范标准《阿里巴巴Java开发手册 终极版 v1.3.0》下载
  2. 《基于数字信号处理的相干光通信技术》读书笔记chapter I——导论
  3. DRUID 连接池的使用、配置详解
  4. 计算机职称证书退休工资,职称就像是一座大山,相同教龄不同职称的教师退休工资相差多少?...
  5. arccotx图像在matlab,反三角函数图像与性质是什么?
  6. Flutter仿新浪微博
  7. 那些逝去的岁月-性格分析
  8. XunSearch(讯搜)的使用教程步骤(笔记2)
  9. 解密:智能化变电站中PTP时钟同步(北斗时钟服务器)
  10. 整理金正昆商务礼仪讲座