HDU 4023--Game(贪心+博弈)
来源:互联网 发布:网络审计系统打印记录 编辑:程序博客网 时间:2024/06/04 22:48
来源:http://acm.hdu.edu.cn/showproblem.php?pid=4023
/*题意:Alice有一种1*2的瓷砖,Bob分别有一种2*1的瓷砖,现在有15种形状的图形,Alice和Bob轮流在上面放瓷砖,谁不能放,谁就输。分析:是一个贪心+模拟+博弈的题,根据图形来看,可把图形分类为(1)、(2)、(3,4)、(5,6)、(7,8)、(9,10)、(11,12,13,14)、(15)这几类。其中(1)肯定是Alice的,(2)他不能选,剩下的选择优先顺序应该是(15)、(5,6)、(3,4)、(15)、(11,12,13,14)、(7,8)、(9,10);其中(2)肯定是Bob的,(1)他不能选,剩下的选择优先顺序应该是(15)、(3,4)、(5,6)、(15)、(11,12,13,14)、(9,10)、(7,8);然后直接模拟,计算谁先不能走谁就输了。*/#include <iostream>#include <cstdio>using namespace std;int a[26];int alice,bob;bool v1(){ if (a[15]!=0){a[15]--;alice++;return 1;} if (a[5]!=0){a[5]--;alice++;return 1;} if (a[6]!=0){a[6]--;alice++;return 1;} if (a[3]!=0){a[3]--;return 1;} if (a[4]!=0){a[4]--;return 1;} if (a[11]!=0){a[11]--;return 1;} if (a[12]!=0){a[12]--;return 1;} if (a[13]!=0){a[13]--;return 1;} if (a[14]!=0){a[14]--;return 1;} if (a[7]!=0){a[7]--;return 1;} if (a[8]!=0){a[8]--;return 1;} if (a[9]!=0){a[9]--;bob++;return 1;} if (a[10]!=0){a[10]--;bob++;return 1;} if (alice!=0){alice--;return 1;} return 0;}bool v2(){ if (a[15]!=0){a[15]--;bob++;return 1;} if (a[3]!=0){a[3]--;bob++;return 1;} if (a[4]!=0){a[4]--;bob++;return 1;} if (a[5]!=0){a[5]--;return 1;} if (a[6]!=0){a[6]--;return 1;} if (a[11]!=0){a[11]--;return 1;} if (a[12]!=0){a[12]--;return 1;} if (a[13]!=0){a[13]--;return 1;} if (a[14]!=0){a[14]--;return 1;} if (a[9]!=0){a[9]--;return 1;} if (a[10]!=0){a[10]--;return 1;} if (a[7]!=0){a[7]--;alice++;return 1;} if (a[8]!=0){a[8]--;alice++;return 1;} if (bob!=0){bob--;return 1;} return 0;}int main(){ int T,an=1; scanf ("%d",&T); while (T--) { for (int i=1;i<=15;i++) scanf ("%d",&a[i]); alice = a[1]*2; bob = a[2]*2; bool f=1; while (1) { if (!v1()){f=0;break;} if (!v2())break; } printf ("Case #%d: ",an++); if (!f)printf("Bob\n"); else printf ("Alice\n"); } return 0;}
- HDU 4023--Game(贪心+博弈)
- HDU 4023 Game 贪心 + 博弈
- HDU 4023 Game (博弈)
- HDU 3544 Alice's Game(贪心博弈)
- HDU 4023 贪心+博弈
- hdu 4023 Doubloon Game(博弈)
- HDU 3389 Game(博弈)
- hdu 4701 Game(博弈)
- 2011 上海网选 HDU 4023 Game (博弈+人工智能)
- HDU 4203 Doubloon Game(博弈)
- HDU 1079 Calendar Game (博弈)
- HDU 1525 Euclid's Game (博弈)
- HDU 4642 Fliping game (博弈)
- hdu 4642 Fliping game(博弈)
- hdu - 4642 - Fliping game(博弈)
- JAVA hdu 3951 Coin Game(博弈)
- HDU(1517)A Multiplication Game(博弈)
- HDU-1846 Brave Game 简单博弈 (*)
- Audio子系统学习
- ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试
- 微软企业库5.0学习笔记(三十五)数据访问模块 DataSet以及数据库事务
- 如何学习“概率论与数理统计”
- c++ 75道逻辑题(面试宝典)
- HDU 4023--Game(贪心+博弈)
- 一个是阆苑仙葩,一个是美玉无瑕
- 一个流氓引发的乱战:360装纯究竟给谁看?
- secureCRT配置
- 谈谈如何学习离散数学
- Case Study: A kind of Radial Menu
- oracle存储过程的调试
- 'Failed to load session "ubuntu"' 12.04
- 风尘中,忘了捡拾那日女子留下的胭脂