HDOJ 5523 Game
来源:互联网 发布:墨西哥毒贩知乎 编辑:程序博客网 时间:2024/05/20 07:59
Game
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 387 Accepted Submission(s): 150
Problem Description
XY is playing a game:there are N pillar in a row,which numbered from 1 to n.Each pillar has a jewel.Now XY is standing on the S-th pillar and the exit is in the T-th pillar.XY can leave from the exit only after they get all the jewels.Each time XY can move to adjacent pillar,or he can jump to boundary ( the first pillar or the N-th pillar) by using his superpower.However,he needs to follow a rule:if he left the pillar,he no can not get here anymore.In order to save his power,XY wants to use the minimum number of superpower to pass the game.
Input
There are multiple test cases, no more than 1000 cases.
For each case,the line contains three integers:N,S and T.(1≤N≤10000,1≤S,T≤N)
For each case,the line contains three integers:N,S and T.
Output
The output of each case will be a single integer on a line: the minimum number of using superpower or output -1 if he can't leave.
Sample Input
4 1 44 1 3
Sample Output
01
题意: 有n根柱子排成一排,起始位置是第S根柱子,出口位置是第T根柱子。要求把所有的柱子都走一遍,且走过的不能再走。走法有两种:1,走到与当前相邻的柱子上; 2,直接跳到第一根或者最后一根柱子上,并消耗能量。
问最少消耗多少能量把柱子走完,若不能把柱子走完就输出-1
题解:很容易就知道能把柱子走完的情况下,最多消耗2个能量。 当n不等于1时,S==T时就无法从T根柱子结束(走过的柱子不能再走),所以此种情况下是不能完成的。仅有此一种情况输出-1。 其他各种情况分别讨论即可。
代码如下:
#include<cstdio>#include<cstring>int main(){int n,s,t;while(scanf("%d%d%d",&n,&s,&t)!=EOF){if(n==1){printf("0\n");continue;}if(s==t&&n!=1){printf("-1\n");continue;}if((s==1&&t==n)||(s==n&&t==1)){printf("0\n");continue;}if(s==1||s==n){printf("1\n");continue;}if(s==t+1||s==t-1){printf("1\n");continue;}printf("2\n");}return 0;}
BestCoder上的题目算法考察不多,不过挺锻炼思维能力的。以后常玩
0 0
- HDOJ 5523 Game
- HDOJ 5523 Game
- hdoj 5523 Game 【博弈】
- hdoj Game 5523 (判断)
- hdoj 5523 Game 【细心题】
- BestCoder61(div.2)1002---hdoj 5523 Game
- HDOJ 1846 Brave Game
- HDOJ 1730 Northcott Game
- HDOJ 1729 Stone Game
- HDOJ 2053 Switch Game
- HDOJ 4146 Flip Game
- hdoj 1054 Strategic Game
- hdoj 3622 Bomb Game
- HDOJ 4616: Game
- HDOJ 4621: Life Game
- HDOJ 3484 Matrix Game
- HDOJ 4642 Fliping game
- HDOJ 3622 Bomb Game
- Codeforces Round #328 (Div. 2)(A B C D)
- Eclipse中的快捷键
- IOS 通知机制
- 用户空间与内核空间通讯接口之procfs
- hdu5523 Game
- HDOJ 5523 Game
- Eclipse 下C++ 多线程 pthread.h1
- php操作mongodb教程
- iOS自定义转场动画(4)——自定义模态跳转之dismiss与手势驱动
- js获取所有复选框中的值
- HDU 2076 夹角有多大(水~)
- android之Volley框架的使用(1)
- IOS开发之C基础-循环结构
- 找出发贴水王