UVa Live 7278
来源:互联网 发布:网络维护是什么职位 编辑:程序博客网 时间:2024/05/22 06:34
题目传送门:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&category=701&page=show_problem&problem=5330
n堆牌,每个牌上有数字1到10,每次可以先取0到k个牌不等,再取最上面的卡片的编号数量的牌,不能取的人失败。
sg函数暴力推理。
找不到规律的时候,暴力试试,大力出奇迹。
#include <cstdio>#include <iostream>#include <string.h>#include <string> #include <map>#include <queue>#include <vector>#include <set>#include <algorithm>#include <math.h>#include <cmath>#include <bitset>#define mem0(a) memset(a,0,sizeof(a))#define meminf(a) memset(a,0x3f,sizeof(a))using namespace std;typedef long long ll;typedef long double ld;const int maxn=1005,inf=0x3f3f3f3f;const ll llinf=0x3f3f3f3f3f3f3f3f; const ld pi=acos(-1.0L);int a[1005],sg[1005];int k;int getsg(int top) {if (sg[top]!=-1) return sg[top];bool visit[1005];mem0(visit);for (int i=0;i<=min(k,top-1);i++) {if (top-i-a[top-i]>=0) visit[getsg(top-i-a[top-i])]=1;}for (int i=0;;i++) {if (!visit[i]) {sg[top]=i;return i;}}}int main() {int i,n,cas,sum=0;scanf("%d%d",&cas,&k);while (cas--) {scanf("%d",&n);for (i=1;i<=n;i++) { scanf("%d",&a[i]); } memset(sg,-1,sizeof(sg)); sg[0]=0; int ans=getsg(n); sum=sum^ans;}if (sum) printf("Alice can win.\n"); else printf("Bob will win.\n");return 0;}
阅读全文
0 0
- UVa Live 7278
- Uva-Live Archive3902-Network
- Uva-Live 3905-Meteor
- UVA live 2678 - Subsequence
- UVA Live 6068
- uva live 6479
- uva live 6481
- uva live 6183 Stylish
- uva live 4725题解
- uva live 4728
- Uva-Live Archive-3635-Pie
- uva live 3516 - Exploring Pyramids
- UVA Live 5911:Binary Encoding
- UVA LIVE-4413 - Triangle Hazard
- UVA LIVE-4642 - Malfatti Circles
- UVA LIVE-4642 - Malfatti Circles
- uva live-2322 - Wooden Sticks
- uva live 2326 - Moving Tables
- Java连接access数据库的一点小心得
- Unique Snowflakes 详细题解
- HDU
- 图片无序预加载技术一
- Menu菜单
- UVa Live 7278
- Linux下多进程避免僵尸进程的方法
- XYNUOJ 第四次考试(STL模块)
- MainActivity 主方法
- 三维数据处理软件架构
- [SMOJ2088]魔法练习
- 7、C程序 数组排序之[插入排序改良:希尔排序]
- CMake undefined reference to 问题
- 更新数据库表信息时抛异常java.sql.SQLException: Parameter index out of range (1 > number of parameter