当前位置: 首页 > news >正文

北京联通网站备案临沂做网站好的公司

北京联通网站备案,临沂做网站好的公司,工作室官网模板,建筑网片规范题目描述: 题目解读: 给定移动规则以及起始点,终点;分析终点是否可达,可达则输出最小步数。 解题思路: 首先要判定是否可达。画图可知,对于题目给定的移动规则,只能到达起始点(a,b…

题目描述:


题目解读:

给定移动规则以及起始点,终点;分析终点是否可达,可达则输出最小步数。


解题思路:

首先要判定是否可达。画图可知,对于题目给定的移动规则,只能到达起始点(a,b)的第一象限和第二象限的上半部分。

因此对于输入的终点(c,d),构建判断语句:如果(c,d)在(a,b)的三四象限,即 d>b,不可达。如果(c,d)在(a,b)的第二象限下半部分,即 c>a && d>=b && c-a>d-b 时,也不可达。

其余可达的点计算最小路径。题目给定的移动方式是向左平移或者向右对角线移动。

我的思路是先走右对角到达终点同一高度(如果终点和起点y坐标相同则省略该步),然后左移即可。(这个思路是经过计算的,即使终点在起点的第一象限,先到右对角线再左移 和 先向左移然后通过·右对角线不断靠近,所需步数是一样的。)

从(a,b)到(c,d),先走右对角线,到达(a+d-b,d),然后向左移动到(c,d)即可。

到达(a+d-b,d)需要d-b步,移动到(c,d)需a+d-b-c步,共需要d-b+a+d-b-c


代码实现:

//判断能否按题目要求进行移动,能的话给出最小步数
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>void Solve() {int a,b,c,d;scanf("%d%d%d%d", &a,&b,&c,&d);if (b>d || (c>a && d>=b && c-a>d-b)){printf("%d\n",-1);}else printf("%d\n", (d-b)+ (a+d-b)-c );return;
}int main() {int t;scanf("%d", &t);while (t--) Solve();return 0;
}

遇到的错误:求解移动步数的时候容易卡壳。

http://www.yayakq.cn/news/939758/

相关文章:

  • 房地产网站建设与优化分析北京网站搜索引擎优化推广
  • 阜新门户网站建设做设计兼职的网站
  • 做网站用注册公司吗电子商务网站建设 第二版
  • 网站seo推广软件优秀排版设计网站
  • 点击即玩的小游戏网站平面设计如何接单
  • 建站工具模板黑群晖建设个人网站
  • 明年做哪个网站能致富免费海报模板网站
  • 马云做中国最大的网站wordpress企业商城模板
  • 百度开放云做网站网站提交入口汇总
  • 360免费建站搜索引擎收录吗网站制作合同
  • 美食网站建设需求网易企业邮箱登录入口网页版
  • 电脑网站开发手机上可以打开吗品牌网站建设毛尖2
  • 无锡网站建设价格最优网页制作专业信息
  • 做网站的哪个好哪家公司制作网站
  • 网易云企业网站建设模板李沧网站建设谁家好
  • 鄂州网站建设哪家专业自己的网站怎么做
  • 哈尔滨中小企业网站制作网站建设 办公系统
  • 随州网站建设哪家专业如何自己学做网站
  • 网站建设php书籍网站评论源码
  • 长春整站优化创鑫时代广告公司简介
  • 二手手机网站网页设计影视公司联系方式
  • 东营做网站做网站分流
  • 用wordpress开发网站国际金融资讯做的好的网站
  • 开发网站用什么软件门户网站目标客户
  • 阿里云怎么做静态网站wordpress扁平模板
  • 河北三河建设厅网站去掉 wordpress
  • 产品宣传类网站设计注意重庆网站建设公司有哪些
  • 电商运营自学网站wordpress玻璃透主题
  • 邢台度网网站建设大连互联网公司排名
  • 一台服务器可以建设几个网站建筑学是十大最烂专业之一吗