【BZOJ2927】[Poi1999]多边形之战 博弈
【BZOJ2927】[Poi1999]多边形之战
Description
Input
Output
Sample Input
0 1 2
2 4 3
4 2 0
0 5 4
Sample Output
题解:代码300B的神题
我们分3种情况讨论
1.如果黑色三角形有两条边在凸多边形上,那么直接切了就好了,输出TAK
2.如果黑色三角形有一条边在凸多边形上,那么最终情况一定是一个黑色三角形和一个白色三角形,此时直接取黑色就好了,必胜;然后我们将切掉的白色三角形一个一个加回去。加一个,变成必败了,再加一个,又必胜...所以n为偶则胜,n为奇则败
3.如果黑色三角形没有边在凸多边形上,那么最终情况还是一个黑色三角形连着一个白色三角形,还是n为偶则胜,n为奇则败
所以只需要读入一条边就行
#include <cstdio>
#include <iostream>
using namespace std;
int main()
{
int n,a,b,c,A,B,C;
scanf("%d%d%d%d",&n,&a,&b,&c);
if(a<b) swap(a,b);
if(a<c) swap(a,c);
if(b<c) swap(b,c);
if((a==b+1&&b==c+1)||(a==n-1&&b==1&&c==0)||(a==n-1&&b==n-2&&c==0)) printf("TAK");
else
{
if(n&1) printf("NIE");
else printf("TAK");
}
return 0;
}
【BZOJ2927】[Poi1999]多边形之战 博弈的更多相关文章
- BZOJ 2927: [Poi1999]多边形之战 (博弈)
题意 有一个凸多边形,顶点编号逆时针从0到n-1.现在这个n边形被剖分成n-2个三角形,给出这n-2个三角形的顶点,保证这是用n-3条不交叉的对角线划分出来的.现在第一个三角形是黑色,其他都是白色.两 ...
- bzoj 2927: [Poi1999]多边形之战【博弈论】
先手必胜状态是黑三角在边上 然后其他情况脑补一下,n为偶数先手必胜,可以理解为从某一边取,先手总有办法让后手取得一边有奇数个 #include<iostream> #include< ...
- 多边形之战(bzoj 2927)
Description 多边形之战是一个双人游戏.游戏在一个有n个顶点的凸多边形上进行,这个凸多边形的n-3条对角线将多边形分成n-2个三角形,这n-3条对角线在多边形的顶点相交.三角形中的一个被染成 ...
- 牛客网——F小牛再战(博弈,不懂)
链接:https://www.nowcoder.net/acm/contest/75/F来源:牛客网 题目描述 共有N堆石子,已知每堆中石子的数量,两个人轮流取石子,每次只能选择N堆石子中的一堆取一定 ...
- bzoj AC倒序
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...
- 基于C/S架构的3D对战网络游戏C++框架_04客户端详细设计与OpenGL、Qt基础
本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目. 笔者将分为以下三个部分向大家介绍(每日更新): ...
- POJ 3710 Christmas Game [博弈]
题意:略. 思路:这是个删边的博弈游戏. 关于删边游戏的预备知识:http://blog.csdn.net/acm_cxlove/article/details/7854532 学习完预备知识后,这一 ...
- B站学习记:贪心与博弈
贪心 1. poj2287 N匹马的田忌赛马问题 稳稳地赢. 寻找最优的方案. 更优的收益. 有时候,局部最优导致全局最优. 马的能力值. 使得让我赢的局数最多. 对于对方的任何一匹马,如果我的马能打 ...
- 从《三体》到“中美科技战”,3分钟理解“网络”D丝为什么要迎娶“算力”白富美
摘要:在多维的世界里,高维的文明对于低维文明具有碾压的优势,而网络也正在从二维走向三维!网络硬件的竞争主要是“芯片+算法”. 从三体到中美科技战,理解网络与算力深度融合助力高维度竞争 1:对抗封锁,需 ...
随机推荐
- Android---Handler消息处理机制
搞Android的人都知道.android是不同意你在子线程中更新UI操作的.这主要出于线程安全方面的考虑.通常的做法是在主线程中创建一个Handler对象,在子线程中创建一个Message对象.该M ...
- XML - 十分钟了解XML结构以及DOM和SAX解析方式
引言 NOKIA 有句著名的广告语:"科技以人为本".不论什么技术都是为了满足人的生产生活须要而产生的.详细到小小的一个手机.里面蕴含的技术也是浩如烟海.是几千年来人类科技的结晶, ...
- pandas所占内存释放
df = pd.read_csv('....') 要调用循环处理多个文件时,内存占用情况严重,如果互相之间不需要调用,可以直接del df 释放内存
- C# Interview Questions:C#-English Questions
This is a list of questions I have gathered from other sources and created myself over a period of t ...
- html5-本地数据库的操作
<script src="jquery-1.8.3.js"></script><script>/* IE11不支持此操作创建数据库 解释一下op ...
- Objective-C之成魔之路【5-选择结构】
郝萌主倾心贡献.尊重作者的劳动成果,请勿转载. 假设文章对您有所帮助,欢迎给作者捐赠,支持郝萌主.捐赠数额任意,重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 Objec ...
- vsftp 虚拟用户高级设置(转载)
发布:xiaokk 来源:net [大 中 小] vsftp 虚拟用户高级设置 本文转自:http://www.jbxue.com/article/1724.html 1.安装所需软件包 ...
- Unity3D发布安卓报错permisson denied的解决
没有打开SD卡的写入权限 unity提供了sd卡权限修改的参数:
- 140726暑期培训.txt
1. 输入多组数据的时候 while(scanf("%s",s)!=EOF) while(gets(s)!=NULL) 用gets和scanf不 ...
- JSP中out.write()和out.print()的区别
out对象的类型是JspWriter.JspWriter继承了java.io.Writer类. 1)print方法是子类JspWriter,write是Writer类中定义的方法: 2)重载的prin ...