哈尔滨理工大学第四届ACM程序设计竞赛J: xiaodao 我爱你!
来源:互联网 发布:tensorflow分布式搭建 编辑:程序博客网 时间:2024/04/29 18:43
Description
自从见到 xiaodao 的第一眼起,我就不可救药的爱上了她。
能和xiaodao一起玩儿游戏,真是荣幸之至。xiaodao爱玩抓石子,我果断就跟着混啦。
xiaodao 在地面上均匀地撒上 N * M 的石子阵。(2 <= N , M <= 1e9)
xiaodao——我不喜欢单身,所以如果 N * M 是奇数的话,我就会把最中间的那一个石子提前拿掉!
DS——呵呵
xiaodao——玩不玩啊,没诚意
DS——玩儿,玩儿,xiaodao姐姐带我玩儿
xiaodao——听着啊,我们每次找一个格子,它的四个顶点至少有一个没有被拿走的石子。
DS——嗯嗯
xiaodao——如果四个顶点有石子,那么你可以把石子都拿走(不能剩下),如果没有石子你得再选一次,直到有拿走石子为止。
DS——不太明白。
xiaodao——啪!
xiaodao——我们规定,如果谁没有石子拿了,谁就输,听明白了么!
DS——听明白了。
xiaodao——你比我弱,你先拿,我后拿,我们轮流来。
我们知道xiaodao是“绝顶”聪明的妹子,我们假设DS也很聪明,都能用最优策略。
我们想赶快知道结果——到底谁能赢得最后的胜利?
Input
第一行是一个整数 T 代表以下 T 组数据。
每组数据占一行,两个整数 N , M。(注意,当 N * M 为奇数的时候中心的那一个石子已经被拿走了)
Output
输出一行,如果是 DS 获胜那么输出 "DS" , 否则输出 "xiaodao" . (不带引号)
Sample Input
22 23 3
Sample Output
DSxiaodao
Hint
1. 以下是两个样例的游戏开始的示意图
2. 对于非法情况的界定
如图,对于下图的N=9,M=9情况,√的代表合法操作,×的代表非合法操作。
非合法操作有两种——超出边界或者格子四个顶点没有石子。
自己多画几个图就能找到规律了
#include <stdio.h>#include <string.h>#include <algorithm>using namespace std;int main(){ int n,m; while(~scanf("%d%d",&n,&m)) { if(n%2==0 && m%2==0) printf("DS\n"); else printf("xiaodao\n"); } return 0;}
- 哈尔滨理工大学第四届ACM程序设计竞赛J: xiaodao 我爱你!
- 哈尔滨理工大学第四届ACM程序设计竞赛F: 背包
- 哈尔滨理工大学第四届ACM程序设计竞赛I: 真•找规律
- 开锁魔法II 哈尔滨理工大学第五届ACM程序设计竞赛
- 哈尔滨理工大学第五届ACM程序设计竞赛 沼跃鱼
- 哈尔滨理工大学第五届ACM程序设计竞赛(热身)
- 哈尔滨理工大学第五届ACM程序设计竞赛 沼跃鱼 KMP or 暴力
- "尚学堂杯"哈尔滨理工大学第七届程序设计竞赛
- 哈尔滨理工大学第七届程序设计竞赛(G.Great Atm)
- 哈尔滨理工大学第七届程序设计竞赛初赛 题集
- 哈尔滨理工大学第七届程序设计竞赛决赛 B 幸运大奖
- 周末训练笔记+哈尔滨理工大学第七届程序设计竞赛AB
- 哈尔滨理工大学第七届程序设计竞赛决赛 题解
- 哈尔滨理工大学第七届程序设计竞赛决赛 B 幸运大奖
- 哈尔滨理工大学第七届程序设计竞赛决赛 C 小明打联盟
- 哈尔滨理工大学第七届程序设计竞赛决赛 D 数圈圈
- 哈尔滨理工大学第七届程序设计竞赛初赛(低年级组)
- 图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-J-简单的变位词
- 两个线程A和B,任务都是打印当前时间,要求编码实现:线程A和B同时启动后,以先A后B的方式任务交叉执行10次。
- 说说Android桌面(Launcher应用)背后的故事(五)——桌面壁纸的添加
- 大数据实战
- C++小结(一)—基本了解
- 说说Android桌面(Launcher应用)背后的故事(六)——研究Launcher而实现的附属品(可以拖拽的ListView)
- 哈尔滨理工大学第四届ACM程序设计竞赛J: xiaodao 我爱你!
- 说说Android桌面(Launcher应用)背后的故事(七)——又是一个附属品(可以转动的绚烂饼图)
- 项目管理---敏捷开发思想---带来相当愉快的项目开发过程
- 【FJOI2014】石子合并问题
- Java JDBC 连接Oracle
- 顺序栈
- 类目和延展
- 网络诊断,浏览器不能上网,其他软件都能上网
- 建立汉澳sinox应用商店