UESTC 1898 棋盘

棋盘

Time Limit: 1000 ms Memory Limit: 65535 kB Solved: 114 Tried: 339

Submit

Status

Best Solution

Back

Description

UDKRU在一个白色的方格棋盘上玩游戏,棋盘有N行M列,由N*M个小方格组成。两人轮流进行游戏,UDK先开始,然后是RU。在每一轮游戏中,当前一方需要在棋盘上选择一个1*kk*1的全白矩形,并将里面的k个小格子全部染成黑色(每轮k的大小都可以由当前玩家自己决定),将最后一个格子染色的一方获得游戏胜利。


现在假设两人都采取最佳的策略,给定棋盘大小,请问谁将获得胜利?

Input

数据的第一行是一个整数T(0 <= T <= 10000),代表一共有T组测试数据。
接下来T行,每行由两个整数N和M组成(1 <= N, M <= 100),表示了每组数据中棋盘的大小。

Output

请严格输出T行,每行仅包括一个字符串"UDK" 或者 "RU",代表每组测试数据对应的胜利一方的姓名。

Sample Input

2
1 2
2 2

Sample Output

UDK
RU

Hint

Sample Input中共有两组数据,其中第一组数据棋盘的大小是1*2,即1行2列,UDK先手,可以直接选择涂1*2的矩阵,把棋盘完全染色从而直接获得胜利。
请严格按照输出规则输出,行末不允许有多余的空格,最后一组数据行末同样需要换行。

/*我们先思考一个经典的问题。两个人在一张圆桌上玩游戏,两人需要轮流在桌子上放下一枚硬币,每次硬币的位置不能与之前的硬币相交,无法放置硬币的一方失败,问谁将获得最后的胜利。
事实上这道题目很简单,先手只需要把第一枚硬币放到圆桌的中心,那么无论后手在什么位置放硬币,先手只要放在关于中心的对称位置即可。也就是说,只要后手能够放下硬币,先手一定存在放下硬币的方法,所以先手必胜。
我们用同样的思路思考这道题目:
1、当棋盘的长宽均为偶数时,这个棋盘存在一个中心点(注意是中心点,不是中心格子),这时,无论先手怎样选择矩形染色,后手一定可以在先手选择矩形位置的对称位置找到一个相同大小的矩形染色,因而在这种情况下后手必胜。
*/

#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
#define N 1005
int main()
{
 int m,n,T;
 scanf("%d",&T);
 while(T--)
 {
  scanf("%d%d",&n,&m);
  if(n%2||m%2)
   printf("UDK\n");
  else
   printf("RU\n");
 }
 return 0;
}
 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值