洛谷P2599||bzoj1413 [ZJOI2009]取石子游戏
根本不会啊。。。
看题解吧
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<vector>
using namespace std;
#define fi first
#define se second
#define mp make_pair
#define pb push_back
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int> pii;
int T;
int n;
int a[];
int lft[][],rht[][];
//[l,r]区间左侧加/右某个元素使得成为必败态
int main()
{
int i,l,r,t1,t2,x;
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
for(i=;i<=n;++i)
scanf("%d",a+i);
if(n==)
{
printf("%d\n",);
continue;
}
if(n==)
{
printf("%d\n",int(a[]!=a[]));
continue;
}
for(i=;i<=n;++i)
lft[i][i]=rht[i][i]=a[i];
for(i=;i<=n;++i)
{
for(l=;l<=n-i+;++l)
{
r=l+i-;
t1=lft[l][r-];t2=rht[l][r-];x=a[r];
if(t2==x) lft[l][r]=;
else if(x<t1&&x<t2) lft[l][r]=x;
else if(x>t1&&x>t2) lft[l][r]=x;
else if(t1<=x&&x<t2) lft[l][r]=x+;
else if(t2<x&&x<=t1) lft[l][r]=x-;
}
for(l=;l<=n-i+;++l)
{
r=l+i-;
t1=lft[l+][r];t2=rht[l+][r];x=a[l];
if(t1==x) rht[l][r]=;
else if(x<t1&&x<t2) rht[l][r]=x;
else if(x>t1&&x>t2) rht[l][r]=x;
else if(t2<=x&&x<t1) rht[l][r]=x+;
else if(t1<x&&x<=t2) rht[l][r]=x-;
}
}
printf("%d\n",int(lft[][n]!=a[]));
}
return ;
}
洛谷P2599||bzoj1413 [ZJOI2009]取石子游戏的更多相关文章
- 【洛谷2252&HDU1527】取石子游戏(博弈论)
题面 HDU1527 取石子游戏 洛谷2252 取石子游戏 题解 裸的威佐夫博弈 #include<iostream> #include<cmath> using namesp ...
- bzoj1413 [ZJOI2009]取石子游戏
Description 在研究过Nim游戏及各种变种之后,Orez又发现了一种全新的取石子游戏,这个游戏是这样的: 有n堆石子,将这n堆石子摆成一排.游戏由两个人进行,两人轮流操作,每次操作者都可以从 ...
- 【BZOJ1413】[ZJOI2009]取石子游戏(博弈论,动态规划)
[BZOJ1413][ZJOI2009]取石子游戏(博弈论,动态规划) 题面 BZOJ 洛谷 题解 神仙题.jpg.\(ZJOI\)是真的神仙. 发现\(SG\)函数等东西完全找不到规律,无奈只能翻题 ...
- bzoj 1413 [ZJOI2009]取石子游戏
1413: [ZJOI2009]取石子游戏 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 747 Solved: 490[Submit][Statu ...
- 【一本通提高博弈论】[ZJOI2009]取石子游戏
[ZJOI2009]取石子游戏 题目描述 在研究过 Nim 游戏及各种变种之后,Orez 又发现了一种全新的取石子游戏,这个游戏是这样的: 有 n n n 堆石子,将这 n n n 堆石子摆成一排.游 ...
- vijos 1557:bzoj:1413: [ZJOI2009]取石子游戏
Description 在研究过Nim游戏及各种变种之后,Orez又发现了一种全新的取石子游戏,这个游戏是这样的: 有n堆石子,将这n堆石子摆成一排.游戏由两个人进行,两人轮流操作,每次操作者都可以从 ...
- 【刷题】BZOJ 1413 [ZJOI2009]取石子游戏
Description 在研究过Nim游戏及各种变种之后,Orez又发现了一种全新的取石子游戏,这个游戏是这样的: 有n堆石子,将这n堆石子摆成一排.游戏由两个人进行,两人轮流操作,每次操作者都可以从 ...
- 【BZOJ1413】取石子游戏(博弈,区间DP)
题意:在研究过Nim游戏及各种变种之后,Orez又发现了一种全新的取石子游戏,这个游戏是这样的: 有n堆石子,将这n堆石子摆成一排.游戏由两个人进行,两人轮流操作,每次操作者都可以从最左或最右的一堆中 ...
- 洛谷 Roy&October之取石子
题目背景 Roy和October两人在玩一个取石子的游戏. 题目描述 游戏规则是这样的:共有n个石子,两人每次都只能取pk 个(p为质数,k为自然数,且pk小于等于当前剩余石子数),谁取走最后一个石子 ...
随机推荐
- FFmpeg音视频编解码实践总结
PS:由于目前开发RTSP服务器传输模块时用到了h264文件,所以攻了一段时间去实现h264的视频编解码,借用FFmpeg SDK实现了任意文件格式之间的转换,并实现了流媒体实时播放,目前音视频同步需 ...
- CI核心文件分析之基准测试类 (Benchmark.php)
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); /** * CodeIgniter * * ...
- html5--5-13 渐变色
html5--5-13 渐变色 学习要点 掌握渐变色的绘制方法 渐变色绘制方法 createLinearGradient() 创建线性渐变 createLinearGradient(x1,y1,x2, ...
- 书写优雅的shell脚本(七)- ${COLUMN:-}
${COLUMN:-} 如果COLUMN是空变量,或者变量不存在,返回-后面的内容,如果变量有值返回这个值.
- Failed to import pydot
在使用keras进行模型绘制的时候,出现了一个错误 Failed to import pydot. You must install pydot and graphviz for `pydotprin ...
- LSH-局部敏感哈希
LSH的基本思想是: 将原始数据空间中的两个邻近数据点通过某种映射或变换,使得这两个数据点在变换后的数据空间中仍然相邻的概率很大,而不相邻的数据点被映射到同一个桶的概率很小. 因此,最最重要的就变成了 ...
- XML 解析中 SelectSingleNode 与 SelectNodes 使用通配符介绍
俺是 XML XPath的新手,最近因为项目需要,研究了一下基本的两个函数 SelectSingleNode和SelectNodes 是如何实用通配符的,分享以下基本经验: 假设有段XML 如下所示: ...
- MTK touchscreen 流程
1. kernel-3.18/drivers/input/touchscreen/mediatek/tpd_common_probe.c static int __init tpd_probe_ini ...
- Python批量操作Linux服务器执行命令
#-*- coding: utf-8 -*- #!/usr/bin/python import paramiko import threading def ssh2(ip,username,passw ...
- JAVA NIO non-blocking模式实现高并发服务器
JAVA NIO non-blocking模式实现高并发服务器 分类: JAVA NIO2014-04-14 11:12 1912人阅读 评论(0) 收藏 举报 目录(?)[+] Java自1.4以后 ...