题目链接:hdu_5754_Life Winner Bo

题意:

一个棋盘,有国王,车,马,皇后四种棋子,bo先手,都最优策略,问你赢的人,如果双方都不能赢就输出D

题解:

全部都可以直接推公式, 这里我推出前两种比较简单的,后面的模拟打个表就行了

 #include<bits/stdc++.h>
#define mst(a,b) memset(a,b,sizeof(a))
#define F(i,a,b) for(int i=a;i<=b;++i)
using namespace std;
typedef long long ll; int mp3[][],mp4[][],lie[],hang[],xie[];
void init()
{
for(int i=;i>=;i-=)
{
mp3[i][i]=;
if(i->=&&i->=)mp3[i-][i-]=;
if(i->=&&i->=)mp3[i-][i-]=;
}
for(int i=;i>=;i--)
{
if(hang[i])continue;
for(int j=;j>=;j--)
{
if(lie[j]||xie[+i-j])continue;
mp4[i][j]=;
hang[i]=,lie[j]=,xie[+i-j]=;
break;
}
}
} int main(){
init();
int t,type,n,m;
scanf("%d",&t);
while(t--)
{
scanf("%d%d%d",&type,&n,&m);
int nn=-n+,mm=-m+;
if(type==)
{
if(n&&&m&)puts("G");else puts("B");
}
else if(type==)
{
if(n==m)puts("G");else puts("B");
}
else if(type==)
{
if(mp3[nn][mm]==)puts("G");
else if(mp3[nn][mm]==)puts("B");
else puts("D");
}
else if(mp4[nn][mm])puts("G");else puts("B");
}
return ;
}

hdu_5754_Life Winner Bo(博弈)的更多相关文章

  1. hdu-5754 Life Winner Bo(博弈)

    题目链接: Life Winner Bo Time Limit: 2000/1000 MS (Java/Others)     Memory Limit: 131072/131072 K (Java/ ...

  2. HDU 5754 Life Winner Bo 组合博弈

    Life Winner Bo Problem Description   Bo is a "Life Winner".He likes playing chessboard gam ...

  3. HDU 5754 Life Winner Bo (博弈)

    Life Winner Bo 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5754 Description Bo is a "Life W ...

  4. 5754Life Winner Bo

    给定一个n*m的矩阵,有四种棋子(国际象棋的王,王后,骑士,车).起点在(1,1)先走到(n,m)获胜. 分析:车是nim博弈.王后是威佐夫博弈.王和骑士写两个1000*1000的预处理即可. hdu ...

  5. HDU 5754Life Winner Bo

    Life Winner Bo Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  6. HDU5754 Life Winner Bo(博弈)

    题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=5754 Description Bo is a "Life Winner" ...

  7. HDU 5754 Life Winner Bo (各种博弈) 2016杭电多校联合第三场

    题目:传送门 题意:一个国际象棋棋盘,有四种棋子,从(n,m)走到(1,1),走到(1,1)的人赢,先手赢输出B,后手赢输出G,平局输出D. 题解:先把从(n,m)走到(1,1)看做是从(1,1)走到 ...

  8. HDU 5754 Life Winner Bo (找规律and博弈)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5754 给你四种棋子,棋子一开始在(1,1)点,两个人B和G轮流按每种棋子的规则挪动棋子,棋子只能往右下 ...

  9. HDU 5754 Life Winner Bo(各类博弈大杂合)

    http://acm.hdu.edu.cn/showproblem.php?pid=5754 题意: 给一个国际象棋的棋盘,起点为(1,1),终点为(n,m),现在每个棋子只能往右下方走,并且有4种不 ...

随机推荐

  1. django+celery+rabitmq

    django 项目中的设置(proj代表项目目录) proj settings.py CELERY_BROKER_URL = 'amqp://guest:guest@localhost:5672/' ...

  2. JS逻辑运算大于小于比较

    遇到这个问题,结果测试了好半天终于发现原因, 例子: var az = $('#a').css('zIndex'); // 1001 var bz = $('#b').css('zIndex'); / ...

  3. Bounce 弹飞绵羊

    Bounce 弹飞绵羊 题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2002 分块 将整个大区间分成若干块,每个点维护到下一个块需要跳的次 ...

  4. C#_传单小子

    2013/4/13日编写,已经许久不用了,今天又翻出来了,打算继续完善这个小软件,明年将发布出来提供给大家使用.

  5. Beef

    修改配置文件/usr/share/beef-xss/config.yaml (1)改vi beef侦听端口:    http:   port:3000(改为80) (2)与Metaspolit关联: ...

  6. php websocket聊天室

    要理解socket就要先理解http和tcp的区别,简单说就是一个是短链,一个是长链,一个是去服务器拉数据,一个是服务器可以主动推数据. 而socket就是应用层与TCP/IP协议族通信的中间软件抽象 ...

  7. java 导出excel(复杂案例)

    import java.io.FileOutputStream;import java.io.IOException; import org.apache.poi.hssf.usermodel.HSS ...

  8. shell初学

    超简单的一段shell代码,查看电脑属性,删除无效安装包,查看天气.FYI  #!/bin/bash echo -e '\n' echo "Hello,`whoami`" echo ...

  9. BZOJ3963: [WF2011]MachineWorks

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3963 CDQ分治加凸包.具体看这篇题解:http://www.acmerblog.com/ ...

  10. ATL opengl

    #include <atlbase.h> #include <atlwin.h> #include <gl/glew.h> #include <gl/GL.h ...