2017 ACM-ICPC EC-Final ShangHai(思维乱搞赛)
感觉全是思维乱搞题。
Gym - 101775J Straight Master
给你n种扑克,你每次可以出连续的3 ~ 5 张,问你能否出完。
Sample Input
2
13
1 2 2 1 0 0 0 0 0 0 0 0 0
13
1 1 1 1 0 1 1 0 0 0 0 0 0 Sample Output
Case #1: Yes
Case #2: No
相当于每次把一个长度为3~5的区间整体减1,问最后是否能够全部减成0。
显然,每次把一个长度大于5的区间整体减1也是可以的,因为6 = 3+3,7 = 3+4......
所以问题就变成了每次修改一个长度大于等于3的区间。
可以先维护原本序列的差分,然后区间整体减1就相当于a[l]--, a[r+1]++。
所以只要贪心的枚举每个大于0的位置,然后找后面的离他最近的小于0的数字匹配,把前者减,后者加,就可以了。
如果最近的距离 < 3那么就是不可以。
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream> using namespace std;
typedef long long LL;
const int maxn = + ; int a[maxn];
LL c[maxn]; int main()
{
int t;
scanf("%d", &t);
for (int ca = ; ca <= t; ca++)
{
memset(a, , sizeof(a));
int n;
scanf("%d", &n);
for (int i = ; i <= n; i++) scanf("%d", &a[i]);
for (int i = ; i <= n+; i++) c[i] = a[i]-a[i-]; bool flag = true;
int r = ;
for (int i = ; i <= n; i++)
{
while(c[i] > )
{
while(c[r] >= )
if (++r > n+) flag = false;
if (r-i <= ) flag = false;
if (!flag) break;
c[r] += c[i], c[i] = ;
if (c[r] > ) c[i] = c[r], c[r] = ;
}
if (!flag) break;
} printf("Case #%d: %s\n", ca, flag?"Yes":"No");
}
}
Gym - 101775L SOS
有一个长度为n的数组,Panda和Sheep轮流往一个空的位置上放 "S" 或者是 "O"。
如果有人放完后,构成一个连续的 "SOS",那么这个人就胜利。
现在是Panda先手,再两个人足够决策的情况下,谁会获胜?
平局输出"Draw"。
Sample Input
2
3
7 Sample Output
Case #1: Draw
Case #2: Panda
首先,可以看出一个必胜态一定存在一个S_ _S的情况。
如果构成了这个必胜态,n为奇数时先手胜,n为偶数时先手败。
先讨论n为奇数:
显然的一点就是当n >= 7时,一定存在一个位置,先手放S可以构成一个必胜态,此时后手是无法阻止他的。
所以n为奇数且n >= 7时,先手是必胜的。
再讨论n为偶数:
根据上面的结论,此时先手一定不想构成一个S_ _S的局面,所以第一步一定放O,来尽可能阻止后手构成此必胜态。
什么时候阻止不了呢?当放O的点左边或右边有至少8个点的时候。此时n为16。
综上,n%2 == 1 && n >= 7,先手胜;n%2 == 0 && n >= 16,后手胜;否则就是平局。
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream> using namespace std;
typedef long long LL; int main()
{
int n;
scanf("%d", &n);
for (int i = ; i <= n; i++)
{
int t;
scanf("%d", &t);
if (t% == && t >= )
printf("Case #%d: Panda\n", i);
else if (t% == && t >= )
printf("Case #%d: Sheep\n", i);
else
printf("Case #%d: Draw\n", i);
}
}
2017 ACM-ICPC EC-Final ShangHai(思维乱搞赛)的更多相关文章
- 2017 ACM/ICPC Asia Regional Shenyang Online spfa+最长路
transaction transaction transaction Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 132768/1 ...
- 2017 ACM ICPC Asia Regional - Daejeon
2017 ACM ICPC Asia Regional - Daejeon Problem A Broadcast Stations 题目描述:给出一棵树,每一个点有一个辐射距离\(p_i\)(待确定 ...
- 2017 ACM - ICPC Asia Ho Chi Minh City Regional Contest
2017 ACM - ICPC Asia Ho Chi Minh City Regional Contest A - Arranging Wine 题目描述:有\(R\)个红箱和\(W\)个白箱,将这 ...
- ACM ICPC China final G Pandaria
目录 ACM ICPC China final G Pandaria ACM ICPC China final G Pandaria 题意:给一张\(n\)个点\(m\)条边的无向图,\(c[i]\) ...
- 2017 ACM/ICPC Shenyang Online SPFA+无向图最长路
transaction transaction transaction Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 132768/1 ...
- 2017 ACM/ICPC Asia Regional Qingdao Online
Apple Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Submi ...
- CodeForces - 1228D (暴力+思维+乱搞)
题意 https://vjudge.net/problem/CodeForces-1228D 有一个n个顶点m条边的无向图,在一对顶点中最多有一条边. 设v1,v2是两个不相交的非空子集,当满足以下条 ...
- HDU - 6215 2017 ACM/ICPC Asia Regional Qingdao Online J - Brute Force Sorting
Brute Force Sorting Time Limit: 1 Sec Memory Limit: 128 MB 题目连接 http://acm.hdu.edu.cn/showproblem.p ...
- 2020 ICPC EC Final西安现场赛游记
也不知道从何说起,也不知道会说些什么,最想表达的就是很累很累. 从第一天去的时候满怀希望,没什么感觉甚至还有一些兴奋.到后来一直在赶路,感觉很疲惫,热身赛的时候觉得马马虎虎,导致热身赛被咕.然后教练就 ...
随机推荐
- Maven的学习资料收集--(一)环境搭建
这几天在做项目的时候用到了maven,但是自己没有从来没有接触过,所以咋网上找资料,终于找到了一下的资料,这个是别人总结的,我只是转载过来积累.请尊重原创. 官网地址:http://maven.apa ...
- collectd 与 logstash配置
节点 node1: 配置logstash node2: 配置collectd, collectd收集本地的信息, 通过配置将信息发送到node1节点 node1安装配置logstash rpm -iv ...
- spring transaction 初识
spring 事务初识 1.spring事务的主要接口,首先盗图一张,展示出spring 事务的相关接口.Spring并不直接管理事务,而是提供了多种事务管理器,他们将事务管理的职责委托给Hibern ...
- vue-resource的使用
之前使用axios post请求不能向后台发送数据,然后使用了vue-resource这个插件 import Vue from 'vue' import VueResource from 'vue- ...
- linux命令模式下如何切换首行和尾行
G是到最后一行,gg是到第一行
- alias 新的命令='原命令 -选项/参数'。举例说明,alias l=‘ls -lsh' 将重新定义 ls 命令,现在只需输入 l 就可以列目录了。
alias 新的命令='原命令 -选项/参数'.举例说明,alias l=‘ls -lsh' 将重新定义 ls 命令,现在只需输入 l 就可以列目录了.
- JAVA入门2019-JAVA配置(windows7和10通用)IDE推荐和相关软件
如何安装JDK 首先,略过"什么是JDK",非要问,这就是编译环境,JRE是运行环境.一个写程序,一个部署运行. 下载的方法:百度 java se 或者openJDK(两个差不多, ...
- noip模拟赛#24
这套题我只会写第二题...我... T1:给出一个含有向边和无向边的混合图,如何确定无向边的方向使得图中不存在环.保证有解.多解情况输出任意解. =>我往最大流的残量网络的方向去想了...因为混 ...
- Dropout & Maxout
[ML] My Journal from Neural Network to Deep Learning: A Brief Introduction to Deep Learning. Part. E ...
- MFC-[转]基于MFC的ActiveX控件开发
作者:lidan | 出处:博客园 | 2012/3/13 16:10:34 | 阅读22次 ActiveX 控件是基于组件对象模型 (COM) 的可重用软件组件,广泛应用于桌面及Web应用中.在VC ...