1534 棋子游戏

波雷卡普和瓦西里喜欢简单的逻辑游戏。今天他们玩了一个游戏,这个游戏在一个很大的棋盘上进行,他们每个人有一个棋子。他们轮流移动自己的棋子,波雷卡普先开始。每一步移动中,波雷卡普可以将他的棋子从(x,y) 移动到 (x-1,y) 或者 (x,y-1)。而瓦西里可以将他的棋子从(x,y) 移动到 (x-1,y),(x-1,y-1) 或者 (x,y-1)。当然他们可以选择不移动。

还有一些其它的限制,他们不能把棋子移动到x或y为负的座标,或者移动到已经被对手占据的座标。最先到达(0,0)的人获胜。

现在给定他们棋子的座标,判断一下谁会获胜。

输入

单组测试数据。
第一行包含四个整数xp,yp,xv,yv (0≤xp,yp,xv,yv≤10^5) ,表示波雷卡普和瓦西里棋子的座标。
输入保证他们的棋子在不同位置,而且没有棋子在(0,0)。

输出

如果波雷卡普获胜,输出Polycarp,否则输出Vasiliy。

输入样例

2 1 2 2

输出样例

Polycarp

思路:

不难发现,第一个人取胜的关键就是能不能截住第二个人走对角线的路径,或者第二人完全走对角线的最短距离还是大于等于第一人的路径长度。前一种情况只要满足第一个人的坐标在第二个人左下角即可(为什么没想明白,不会严格证明,刚开始自己写的是求出第一个人到第二个人所走对角线的最短距离和对角线长度作比较,看了别人代码才有了更简单思路)。

代码实现:

#include<iostream>
#include<cstring>
#include<cmath>
#include<stack>
#include<algorithm>
#define LL long long
#define INF 0x3f3f3f3f
using namespace std;
const int N=4e5+100;
int  main(){int x,y,p,q;while(cin>>x>>y>>p>>q){if((x<=p&&y<=q)||max(p,q)>=x+y)cout<<"Polycarp"<<endl;else cout<<"Vasiliy"<<endl;}return 0;}

THE END;

1534 棋子游戏(博弈论,未知规律... ...)相关推荐

  1. 51nod 1534 棋子游戏

    1534 棋子游戏 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 http://www.51nod.com/onlineJudg ...

  2. [AcWing] 1319.移棋子游戏 博弈论 Sg函数板子题

    题目链接:1319.移棋子游戏 题解 好久没写博弈论的题了,写几道复习一下,博弈论SG主要由两大部分组成:SG函数和SG定理 SG(x)=mex(S),其中S是x的后继状态的SG函数值集合,mex(S ...

  3. 51Nod - 1534 棋子游戏(xjb博弈)

    题意: 波雷卡普和瓦西里喜欢简单的逻辑游戏.今天他们玩了一个游戏,这个游戏在一个很大的棋盘上进行,他们每个人有一个棋子.他们轮流移动自己的棋子,波雷卡普先开始.每一步移动中,波雷卡普可以将他的棋子从( ...

  4. 51Nod_1534 棋子游戏【博弈论】

                                               51Nod_1534 棋子游戏 http://www.51nod.com/Challenge/Problem.ht ...

  5. 翻棋子游戏与Nim游戏

    翻棋子游戏: 题意:一个棋盘上每个格子有一个棋子,每次操作可以随便选一个朝上的棋子(x,y),代表第i行第j列的棋子,选择一个形 如(x,b)或(a,y)(其中b < y,a < x)的棋 ...

  6. lol服务器显示未知错误,电脑中玩LOL游戏出现未知错误提示的解决方法

    ‍ 英雄联盟,也就是LOL,是现在热门的游戏之一,很多用户会在电脑中玩LOL.如果遇到了电脑玩LOL出现未知错误提示的问题,应该怎么解决?当遇到这样的问题时,不妨参考下面介绍的几种解决方法. 1.打开 ...

  7. [博弈论]移棋子游戏

    https://www.acwing.com/problem/content/1321/ 思路: 求所有棋子的sg异或之和, 记忆化搜索 得到当前结点后继的这些点的sg值之和,放到set里面(哈希表也 ...

  8. 2018.09.16 loj#10243. 移棋子游戏(博弈论)

    传送门 题目中已经给好了sg图,直接在上面跑出sg函数即可. 最后看给定点的sg值异或和是否等于0就判好了. 代码: #include<bits/stdc++.h> #define N 2 ...

  9. BZOJ 1022 Luogu P4279 [SHOI2008]小约翰的游戏 (博弈论)

    题目链接: (bzoj) https://www.lydsy.com/JudgeOnline/problem.php?id=1022 (luogu) https://www.luogu.org/pro ...

  10. 牛客网CSP-S提高组赛前集训营1题解(仓鼠的石子游戏 [博弈论] + 乃爱与城市的拥挤程度 [树上DP] + 小w的魔术扑克[dfs + 离线])

    文章目录 T1:仓鼠的石子游戏 题目 题解 代码实现 T2:乃爱与城市拥挤程度 题目 题解 代码实现 T3:小w的魔术扑克 题目 题解 代码实现 T1:仓鼠的石子游戏 题目 仓鼠和兔子被禁止玩电脑,无 ...

最新文章

  1. SAP QM 主检验特性主数据关键字段解释
  2. Python3快速入门(五)——Python3函数
  3. JCO3远程调用SAP接口随笔一(配置连接池)
  4. boost::asio::ip::tcp实现阻塞tcp echo客户端的程序
  5. LeetCode-Populating Next Right Pointers in Each Node-填充结点的右指针-二叉树递归
  6. java 0x3f_Java源码位操作技巧欣赏
  7. 【CodeForces - 892C 】Pride (数学,思维构造,gcd)
  8. SpringBoot项目部署到独立的Tomcat上
  9. js语音播报android浏览器,JS 简单调用百度TTS接口实现语音朗读
  10. NUC1214 回文素数【回文+素数】
  11. 简述mysql实现递归查询的方法
  12. SpringCloud升级之路2020.0.x版-1.背景
  13. Linux内存:内存管理的实质 (转CU上frank_seng 的总结,感谢frank_seng )
  14. 错误码errno和perror函数
  15. 红太狼和灰太狼的囧人爱情
  16. strip()函数使用方法
  17. 金蝶软件连接显示服务器超时,金蝶连接云服务器超时
  18. GAN生成对抗网络论文翻译(一)
  19. c语言程序三角形实验报告,C语言程序设计实验报告(6)
  20. Selenium滚动条处理

热门文章

  1. 黑龙江高中计算机结业水平测试,黑龙江省普通高中信息技术学业水平考试标准.doc...
  2. C语言编程题必须运行吗,全国计算机二级c语言的的操作题一定要运行吗?
  3. 网页设计与制作项目教程HTML+CSS+JavaScript之项目三 flower shop
  4. 投资理财书籍推荐 理财书籍排行榜前十
  5. 谷歌有望回归中国市场
  6. d盘不能扩展卷_点读笔小档案:小达人、毛毛虫、卡米、卷之友、外研通...傻傻分不清?...
  7. struts2 拦截器返回值问题
  8. 微信3D小游戏已达数百款,这里肯定有你没玩过的小游戏!
  9. 怎么在PDF文档中为文字添加下划线
  10. 浙江省二级计算机vfp,浙江省高校计算机等级考试大纲(二级——VisualFoxPro语言程序设计大纲)...