传送门


题目

爱丽丝和鲍勃总是在玩游戏!今天的游戏是依次从石堆中取出石头。 有n堆石头,第I堆包含A[i]块石头。

由每堆石头的数量与其邻居的不同,他们决定在不破坏财产的情况下,一次从其中一堆石头中取出一块石头(不能在拿走一块石头后,相邻的不同石头变相同)。爱丽丝先走。 拿不到石头的玩家将输掉游戏。 你应该注意到,即使是一堆0石也还是被视为一堆!


题解

只需每次判断可以拿走多少次sum,当sum是奇数,A赢,反之B赢。

1、当a[i]都小于两边,a[i]可以变成0;

2、当a[i]都大于一边,小于一边,a[i]可以变成较小的那一边+1;

3、当a[i]都大于两边,a[i]可以变成两边最大值+1;

我们只需从头开始反复多遍历几次,就得出答案。


代码

要用scanf 和printf ,不然会被卡。

#include<bits/stdc++.h>
#define ms(a) memset(a,0,sizeof(a));
typedef long long ll;
using namespace std;
const int N = 1e5 + 5;int a[N];
int n;
ll f() {ll x=0;for (int i = 1; i <= n; i++) {int m = -1;if (a[i] > a[i - 1])m = max(m, a[i - 1]);if (a[i] > a[i + 1])m = max(m, a[i + 1]);x += a[i] - m - 1;a[i] = m + 1;}return x;
}
bool solve() {ll sum = 0;
scanf("%d", &n);a[0] = a[n + 1] = INT_MAX;for (int i = 1; i <= n; i++) scanf("%d", &a[i]);ll x;while (1) {x = f();sum += x;if (!x)break;}if (sum & 1)return 1;else return 0;
}
int main() {int t;cin >> t;for (int i = 1; i <= t; i++) {if (solve())printf("Case %d: Alice\n", i);else printf("Case %d: Bob\n", i);}
}

2018桂林J - Stone Game(博弈)相关推荐

  1. 2018 桂林ccpc现场赛 总结

    Day 0 5个小时的火车,坐的昏昏欲睡.桂林站出来没有地铁,而是出租车排成长队依次上车,也算是某种意义上的地铁吧.到了酒店才发现学校那边又给我们换了,又拖着行李找新的酒店,途中路过一家餐馆,所有人都 ...

  2. 桂林电子科技大学的计算机专业排名全,2018桂林电子科技大学专业排名及分数线 王牌专业有哪些...

    2018桂林电子科技大学专业排名及分数线_王牌专业名单 高考填报志愿时,2018桂林电子科技大学专业排名和桂林电子科技大学有哪些王牌专业是广大考生和家长朋友们十分关心的问题,以下为大家整理的桂林电子科 ...

  3. CCPC 2018桂林站游记

    Day0: 食堂饭菜不错 热身赛进行了一半,我们终于拿到了账号密码 A题好像和NOIP2017D1T1有点关系,大概暴力求出一个循环内的数然后膜一下就过了 B题好毒瘤啊,好像是个python解释器啊, ...

  4. UVA - 1378 A Funny Stone Game(博弈+sg函数)

    题目链接:点击查看 题目大意:给出n堆石子,两人轮流按照规则操作,不能操作的一方即为输 规则:每次将第i堆减少一个石子,将第j堆和第k堆增加一个石子,i,j,k满足(i<j<=k) 若先手 ...

  5. 2018沈阳J How Much Memory Your Code Is Using?

    J How Much Memory Your Code Is Using? 字符串模拟 #include<bits/stdc++.h>using namespace std;int mai ...

  6. poj 1740 A New Stone Game 博弈

    题目来源: http://poj.org/problem?id=1740 分析: 均势为:  偶数堆,且 x,x, y,y,z,z... 即先人无论怎么取,后人跟先人一个走法,那么后人一定取最后一堆. ...

  7. D. Tokitsukaze, CSL and Stone Game(博弈)

    Problem - D - Codeforces 时津风和CSL正在玩一个石头的小游戏. 一开始,有n个石子堆,其中第ii堆有aiai石子.两位玩家轮流走棋.时津风先走.每一回合,棋手选择一个非空的棋 ...

  8. 大学生笔记本选Mac还是Windows?

    先说结论,选Mac ! Mac颜值高,便携,续航好,课余时间外出自习,即使不外接电源,Mac也能用一整天. 当代短视频非常火,如果你想做视频剪辑,有Final Cut Pro 和Adobe Pr 任君 ...

  9. 2018CCPC桂林站题解(D G H J L)

    题目链接:http://codeforces.com/gym/102823 问题 D: Bits Reverse 时间限制: 1 Sec  内存限制: 128 MB 提交: 167  解决: 127 ...

最新文章

  1. POJ1088(滑雪)
  2. 集成学习算法之boosting、bagging和随机森林算法原理
  3. 一个祸害我很久的东东——事件过滤器之按键触发
  4. mysql 大写 小写_MySQL大小写问题
  5. 我的学习网址(未完)
  6. jpa使用注解传递对象_注解(下)
  7. C++ RTTI 简介
  8. Leetcode 133.克隆图
  9. java中static代码块_java中静态代码块详解
  10. 2021华为悦盒EC6110-T-M-拆机-强刷固件及教程
  11. SXF终端检测平台 EDR漏洞复现
  12. 天池宫颈癌智能诊断赛后总结——目标检测
  13. Android字体、字重
  14. 讯飞AIUI智能机器人1
  15. 计算机浏览器中默认存在的安全协议是什么,计算机浏览器中默认存在的安全协议是( )。...
  16. MTK 平台TP调试遇坑
  17. JAVA续本_Java业务校验工具实现(续集)
  18. 靶机16 GROTESQUE: 2
  19. 超大文件上传-如何上传文件-大文件上传
  20. SVG基本使用(三、剪裁/蒙版、渐变色、画笔、形变、ViewBox)

热门文章

  1. 基于Pytorch的MNIST手写数字识别实现(含代码+讲解)
  2. 降噪耳机哪款好?综合表现不错的降噪蓝牙耳机推荐
  3. 南通java行业,南通java技术培训中心
  4. Wrong JPEG library version: library is 80, caller expects 62 解决办法
  5. 群晖NAS 7.X版搭建博客网站,并内网穿透发布公网可访问 8-8
  6. Gradle源码全解析,已拿offer
  7. 2023秋招--梦加网络--游戏客户端--一面面经
  8. 原来iPhone自带Respring(注销重启桌面)功能
  9. 【SVAC】国家视频编解码标准SVAC的特色和优势
  10. 3-6指针与数组的天生姻缘