问题描述
XY在玩一个游戏:有N根柱子排成一排,编号为1到N,每个柱子上面有一块宝石,现在XY站在第S根柱子上,出口在第T跟柱子上,XY需要拿到所有宝石后从出口离开。每次XY可以走到相邻的柱子上,也可以使用超能力跳到第一根柱子或者第N根柱子上,如果离开了柱子之后再也不能到达这里。为了节省能量,XY想用最少次数超能力通关。
输入描述
输入有多组数据,不超过1000组.
每组数据输入一行包含3个整数,N,S和T.(1\leq N\leq10000,1\leq S,T\leq N )(1≤N≤10000,1≤S,T≤N)
输出描述
对于每组数据输出一行,表示使用超能力的最少次数,如果不可能离开,输出-1.
输入样例
4 1 4
4 1 3
输出样例
0
1

这题只要分情况讨论就好:无解的情况只有起点和终点位置一样且N不为1。终点和起点都在边界上答案为0,如果起点在边界上或者起点终点相邻答案为1,其他答案为2.
#include <iostream>
#include <cstdio>
#include <memory.h>
#include <algorithm>
using namespace std;
int n,s,t;
int main()
{while(~scanf("%d%d%d",&n,&s,&t)){if(n == 1){printf("0\n");}else if(s == t)printf("-1\n");else if((t == 1 &&s==n)||(s==1&&t==n)){//if(s==n||s==1)printf("0\n");// else{//     printf("2\n");// }}else if(s == 1||s==n){printf("1\n");}else if((s-t==1||s-t==-1)){printf("1\n");}else{printf("2\n");}}return 0;
}

之前一直wa 没想清楚 wa代码是这样的:
#include <iostream>
#include <cstdio>
#include <memory.h>
#include <algorithm>
using namespace std;
int n,s,t;
int main()
{while(~scanf("%d%d%d",&n,&s,&t)){if(n == 1){printf("0\n");}else if(s == t)printf("-1\n");else if(t == 1 t==n){if(s==n||s==1)printf("0\n");else{printf("2\n");}}else if(s == 1||s==n){printf("1\n");}else if((s-t==1||s-t==-1)){printf("1\n");}else{printf("2\n");}}return 0;
}

后来才发现  :

  else if(t == 1 t==n){if(s==n||s==1)printf("0\n");else{printf("2\n");}

这一段代码有问题,因为 t == 1,s==2 那么输出的是1;

转载于:https://www.cnblogs.com/hnzyyTl/p/4928466.html

练习 hdu 5523 Game相关推荐

  1. HDU 4389 - X mod f(x)

    题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=4389 2012多校,第9场,1010 . 问题是,询问区间内 存在多少个 哈沙德数(Harshad ...

  2. hdu 4389 囧,打表

    http://acm.hdu.edu.cn/showproblem.php?pid=4389 题意 :一个数能被他各个位数之和整除则符合要求,给L,R,问区间里有多少个数符合要求. 囧,居然打表就能过 ...

  3. HDU——1106排序(istringstream的使用、STLvector练习)

    排序 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...

  4. hdu 5438 Ponds 拓扑排序

    Ponds Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/contests/contest_showproblem ...

  5. HDU 1248 寒冰王座(全然背包:入门题)

    HDU 1248 寒冰王座(全然背包:入门题) http://acm.hdu.edu.cn/showproblem.php?pid=1248 题意: 不死族的巫妖王发工资拉,死亡骑士拿到一张N元的钞票 ...

  6. hdu 1312 Red and Black 解题报告

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1312 第二条深搜,题目并不难,但是做了我好久好久,由于一个细节,让我赌上了一个晚上的时间. 题目大意: ...

  7. HDU 1429 胜利大逃亡(续) (BFS+位压缩)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1429 胜利大逃亡(续) Time Limit: 4000/2000 MS (Java/Others)  ...

  8. hdu 1272 小希的迷宫

    Problem Description 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走.但是她设计迷宫的思路不一样,首先她认为所有的通道都应该 ...

  9. HDOJ 1157 HDU 1157 Who's in the Middle ACM 1157 IN HDU

    MiYu原创, 转帖请注明 : 转载自 ______________白白の屋   题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=1157 题目描述: ...

最新文章

  1. 关于NameError: name ‘sns‘ is not defined->ModuleNotFoundError: No module named ‘seaborn‘错误提示
  2. 60、IPv6配置实验之RIP
  3. 如何找回误删并清除了回收站的文档
  4. 使用Apriori算法进行关联分析
  5. 浅析Kerberos原理,及其应用和管理
  6. 创建PG全球生态!PostgresConf.CN2019大会盛大召开
  7. NAT技术与代理服务器
  8. 【Linux面试题】全网汇总总结:Linux基础、常用命令、shell脚本、常见笔试题
  9. android如何设置自适应大小的背景图片,Android 背景图片自适应方案
  10. 每日一字:biáng
  11. 云计算之云计算和虚拟化的区别
  12. 开源硬件的舞者--WIZnet
  13. 云原生背景看这一篇就够了
  14. python人工智能方向入门书籍推荐_python 人工智能 入门要看那些理论书
  15. 怎么检测计算机硬件好坏,鲁大师如何检测硬件好坏?硬件好坏检测方法介绍
  16. 你知道哪些冷门但逆天的 App?
  17. datatable隐藏列设置及获取隐藏列的值
  18. 不小心执行了rm -f 如何恢复
  19. 梯度下降算法动图_一文读懂梯度下降算法
  20. 单例模式破坏单例模式

热门文章

  1. java 函数内部类_java 内部类详解 转
  2. 排版 项目 html,项目需求讨论: 文字显示排版— Html 格式
  3. linux开机启动遇到grub启动_Linux如何跳过grub启动
  4. idea可以使用flash框架吗_这个框架厉害了,使用它几分钟就可以编写一个微信插件...
  5. qt设置mysql最大连接数_MySQL服务器最大连接数的合理设置
  6. char值序列是什么Java_CharSequence和java之间的确切区别
  7. java logback 使用_Java | Logback的使用配置
  8. php接收表单图片,如何在PHP中获取表单图片数据
  9. 在AI Studio上部署外部可以直接调用的云端服务
  10. AD7705 16-bit Delta-Sigma AD 转换器