#Multi-SG#BZOJ 2940 [POI2000] 条纹
题目
有\(n\)个格子,可以选择三种长度的线段覆盖,不能重叠,
无法覆盖者为负,问先手是否必胜,\(n\leq 10^3\)
分析
考虑选择一个位置覆盖则该局面分成两个局面,
直接求出SG函数不为0先手必胜即可
代码
#include <cstdio>
#include <cctype>
#define rr register
using namespace std;
int n,m,k,v[1001],sg[1001];
inline signed iut(){
rr int ans=0,f=1; rr char c=getchar();
while (!isdigit(c)) f=(c=='-')?-f:f,c=getchar();
while (isdigit(c)) ans=(ans<<3)+(ans<<1)+(c^48),c=getchar();
return ans*f;
}
signed main(){
n=iut(),m=iut(),k=iut();
for (rr int i=1;i<1001;++i){
for (rr int j=0;j+n<=i;++j)
v[sg[j]^sg[i-j-n]]=1;
for (rr int j=0;j+m<=i;++j)
v[sg[j]^sg[i-j-m]]=1;
for (rr int j=0;j+k<=i;++j)
v[sg[j]^sg[i-j-k]]=1;
for (;v[sg[i]];++sg[i]);
for (rr int j=0;j+n<=i;++j)
v[sg[j]^sg[i-j-n]]=0;
for (rr int j=0;j+m<=i;++j)
v[sg[j]^sg[i-j-m]]=0;
for (rr int j=0;j+k<=i;++j)
v[sg[j]^sg[i-j-k]]=0;
}
for (rr int T=iut();T;--T)
putchar(sg[iut()]?49:50),putchar(10);
return 0;
}
#Multi-SG#BZOJ 2940 [POI2000] 条纹的更多相关文章
- BZOJ 2940: [Poi2000]条纹(Multi-Nim)
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 110 Solved: 70[Submit][Status][Discuss] Description ...
- 2940: [Poi2000]条纹(Multi_SG)
2940: [Poi2000]条纹 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 114 Solved: 72[Submit][Status][Dis ...
- bzoj2940: [Poi2000]条纹
2940: [Poi2000]条纹 条纹游戏是一个双人的游戏.所需要的物品有一个棋盘以及三种颜色的长方形条纹,这三种颜色分别是红色.绿色和蓝色.所有的红色条纹的尺寸是c*1,所有的绿色条纹的尺寸是z* ...
- bzoj千题计划260:bzoj2940: [Poi2000]条纹
http://www.lydsy.com/JudgeOnline/problem.php?id=2940 SG 博弈入门推荐张一飞的<由感性认识到理性认识 ——透析一类搏弈游戏的解答过程> ...
- BZOJ 2946: [Poi2000]公共串
2946: [Poi2000]公共串 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 787 Solved: 342[Submit][Status][D ...
- BZOJ 2946: [Poi2000]公共串( 后缀自动机 )
一个串建后缀自动机, 其他串在上面跑, 然后用当前串跑的去更新全部 ------------------------------------------------------------------ ...
- BZOJ 2938: [Poi2000]病毒 [AC自动机 拓扑排序]
2938: [Poi2000]病毒 题意:判断是否存在无限长的不含模式串的字符串.只有01. 建出套路DP的转移图,判断有环就行了 练习一下拓扑排序 #include <iostream> ...
- BZOJ 2938: [Poi2000]病毒
2938: [Poi2000]病毒 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 693 Solved: 360[Submit][Status][Di ...
- BZOJ 2938 [POI2000]病毒 (剪枝/A*迭代搜索)
LOJ BZOJ 题目大意:给你一些模式串,问是否存在一个无限长的文本串,不包含任何一个给定的模式串 并没有想到去模拟合法的文本串在模式串的Trie图上匹配的过程..我好菜啊 如果一个字符串合法,那么 ...
- BZOJ 2947 Poi2000 促销 set
标题效果:特定n天,首先插入一些每天.然后去掉最高值和最低值,要付出最大的值-至少值价格.乞讨n总天数支付的价格 堆/段树/平衡树光秃秃的标题 #include <set> #includ ...
随机推荐
- virtualapp 应用启动源码分析
应用启动源码分析 在HomeActvity中的OnCreate方法会调用initLaunchpad private void initLaunchpad() { mLauncherView.setHa ...
- MySQL单表能存储多少条数据?
MySQL是中小型网站普遍使用的数据库之一,然而,很多人并不清楚MySQL到底能支持多大的数据量,甚至对它产生误解.MySQL单表的上限,主要与操作系统支持的最大文件大小有关.事实上MySQL能承受的 ...
- 项目实战:Qt+Android模拟操作器(模拟操作app,打开,点击,输入,获取验证码等等)
若该文为原创文章,转载请注明原文出处本文章博客地址:https://blog.csdn.net/qq21497936/article/details/109313803各位读者,知识无穷而人力有穷,要 ...
- 【Azure Function App】遇见无法加载Microsoft.Azure.WebJobs.ParameterBindingData的问题
问题描述 新部署Azure Funciton代码,遇见无法加载 "Microsoft.Azure.WebJobs.ParameterBindingData" 问题 错误消息:Mic ...
- 从源码看webpack3打包流程
在javascript刚刚流行时,前端项目通常比较简单,不需要考虑项目的开发效率.性能和扩展性等. 随着前端项目越来越复杂,需要更正式的软件开发实践,比如单元测试(unit testing).代码检查 ...
- netcore linux ffmpeg 首帧图
第一步 On CentOS/RHEL 6.*: $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-r ...
- period 发音 per + iod 没有ri音 (per=round od=hod=way)
period 发音 per + iod 没有ri音 pɪər iə d peri-在周围 + od-=hod-路,引申词义时期,阶段,句号等. per = round period 美: [ˈpɪrɪ ...
- stream使用汇总
整理了下java使用stream处理list的几个便捷的方法 准备数据 List<KnowledgeInfoTable> knowledgeInfoTables = knowledgeIn ...
- Welcome to YARP - 3 负载均衡 (Load Balancing)
目录 Welcome to YARP - 1.认识YARP并搭建反向代理服务 Welcome to YARP - 2.配置功能 2.1 - 配置文件(Configuration Files) 2.2 ...
- Cesium之双屏联动实现
1. 概述 双屏联动是常见的一种地图开发需求,主要用于同时查看两个地图,进行对比查看,还有一种类似的需求叫"卷帘门"(map split) 双屏联动效果如下: 卷帘门的效果如下: ...