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

CodeForces.1806A .平面移动.[简单][判断可达范围][找步数规律]

题目描述:


题目解读:

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


解题思路:

首先要判定是否可达。画图可知,对于题目给定的移动规则,只能到达起始点(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;
}

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

相关文章:

CodeForces.1806A .平面移动.[简单][判断可达范围][找步数规律]

题目描述&#xff1a; 题目解读&#xff1a; 给定移动规则以及起始点&#xff0c;终点&#xff1b;分析终点是否可达&#xff0c;可达则输出最小步数。 解题思路&#xff1a; 首先要判定是否可达。画图可知&#xff0c;对于题目给定的移动规则&#xff0c;只能到达起始点(a,b…...

Linux系统编程学习 NO.4 ——基础指令学习、操作系统时间的概念、文件压缩包的概念

1.时间相关的概念以及指令 1.1.时间相关的指令 1.1.1.date指令 date可以指定时间显示的格式&#xff1a;date 指定格式 选项 %H&#xff1a;小时 %M&#xff1a;分钟 %S&#xff1a;秒数 %Y&#xff1a;年份 %m&#xff1a;月份 %d&#xff1a;日 %F:相当于%Y-%m-%d %X:相当…...

leecode 数据库:601. 体育馆的人流量

导入数据&#xff1a; Create table If Not Exists Stadium (id int, visit_date DATE NULL, people int); Truncate table Stadium; insert into Stadium (id, visit_date, people) values (1, 2017-01-01, 10); insert into Stadium (id, visit_date, people) values (2, 20…...

gym不渲染画面的解决方案(gym版本号0.26.2)

确认gym版本号 我安装了新版gym&#xff0c;版本号是0.26.2&#xff0c;不渲染画面的原因是&#xff0c;新版gym需要在初始化env时新增一个实参render_mode‘human’&#xff0c;并且不需要主动调用render方法&#xff0c;官方文档入门教程如下 import gym import numpy as n…...

如何在 Fedora 37 上安装 FileZilla?

FileZilla 是一款流行的开源 FTP&#xff08;文件传输协议&#xff09;客户端&#xff0c;它提供了一个直观的界面来管理和传输文件。本文将详细介绍如何在 Fedora 37 上安装 FileZilla。以下是安装过程的详细步骤&#xff1a; 步骤一&#xff1a;更新系统 在安装任何软件之前…...

网终安全技术(刘化君)课后被略的答案

目录 8.HTTP客户机与Wb服务器通信通常会泄露哪些信息&#xff1f; 9.在TCP连接建立的3次握手阶段&#xff0c;攻击者为什么可以成功实施SYN Flood攻击&#xff1f;在实际中&#xff0c;如何防范此类攻击&#xff1f; 常用的网络漏洞扫描技术有哪几种&#xff1f;试举例说明。…...

架构思想之DDD

领域驱动设计&#xff08;Domain-Driven Design&#xff0c;简称DDD&#xff09;是一种架构思想&#xff0c;旨在通过将业务问题领域化&#xff0c;将业务逻辑放在核心领域中&#xff0c;以实现更好的软件设计和可维护性。下面将介绍如何实现DDD的Java实现&#xff0c;包括如何…...

FinClip | 2023 年 4 月产品大事记

我们的使命是使您&#xff08;业务专家和开发人员&#xff09;能够通过小程序解决您的关键业务流程挑战。不妨让我们看看在本月的产品与市场发布亮点&#xff0c;看看它们如何帮助您实现目标。 产品方面的相关动向&#x1f447;&#x1f447;&#x1f447; 全新版本的小程序统…...

试论什么是圣人境界

人类进化方向就是不断的提高智力。鼓吹体力都是反人类。 圣人是人类能够达到的最高境界&#xff0c;再上一层就是神了。按照中华传统&#xff0c;说圣人就是神也是正确的。 圣人境界是什么样子的&#xff1f;在这一点上&#xff0c;孔子给予了答案&#xff1a;吾道一以贯之。掌…...

在外远程登录局域网下的象过河ERP管理系统,无需公网IP

文章目录 概述1.查看象过河服务端端口2.内网穿透3. 异地公网连接4. 固定公网地址4.1 保留一个固定TCP地址4.2 配置固定TCP地址 5. 使用固定地址连接 转发自CSDN远程穿透的文章&#xff1a;公网远程访问公司内网象过河ERP系统「内网穿透」 概述 ERP系统对于企业来说重要性不言而…...

golang 服务中 context 超时处理的思考

文章目录 前言起因&#xff1a;日志告警引发的思考什么是contextcontext的作用context超时之后继续执行 or 中断 最后 前言 公司运行的服务代码中&#xff0c;随处可见各种各样的日志信息&#xff0c;其中大多数是用来记录各种异常的日志&#xff0c;一方面&#xff0c;当出现…...

遇到Uniapp配置meta不生效怎么解决

Uniapp是一种基于 Vue.js 的跨平台应用开发框架&#xff0c;其开发简单、易上手&#xff0c;可以快速构建出 iOS、Android 和 H5 页面&#xff0c;成为现在移动应用开发的重要工具之一。然而&#xff0c;跨平台应用的开发也带来了一些问题&#xff0c;比如本文即是解决 uniapp …...

C语言基础知识:位与位字段

目录 位与字节 位 比特 字节 对齐特性 位字段 位与字节 位 二进制数系统中&#xff0c;每个0或1就是一个位(bit)&#xff0c;位是数据存储的最小单位。其中8 bit就称为一个字节&#xff08;Byte&#xff09;。计算机中的CPU位数指的是CPU一次能处理的最大位数&#xff0…...

新版android studio gradle插件7.4.2.pom一直无法下载问题

android studio同步时候出现org.gradle.api.plugins.UnknownPluginException&#xff0c;Plugin [id: com.android.application, version: 7.4.2] was not found in any of the following sources: pom插件一直无法下载&#xff0c;搞了好几天&#xff0c;简直想砸电脑&#x…...

Shell——变量和引用

1.总结变量的类型及含义&#xff1f; 2.实现课堂案例计算长方形面积&#xff1f;&#xff08;6种方式&#xff09; 3.定义变量urlhttps://blog.csdn.net/weixin_45029822/article/details/103568815 &#xff08;通过多种方法实现&#xff09; 1&#xff09;截取网站访问的协…...

实际开发中一些实用的JS数据处理方法

写在开头 JavaScript 是一种脚本语言&#xff0c;最初是为了网页提供交互式前端功能而设计的&#xff0c;而现在&#xff0c;通过 Node.js&#xff0c;JavaScript 还可以用于编写服务器端代码。 JavaScript 具有动态性、基于原型的面向对象特性、弱类型、多范式、支持闭包执行…...

10:00进去,10:05就出来了,这问的也太变态了···

从外包出来&#xff0c;没想到死在另一家厂子了。 自从加入这家公司&#xff0c;每天都在加班&#xff0c;钱倒是给的不少&#xff0c;所以也就忍了。没想到5月一纸通知&#xff0c;所有人不许加班&#xff0c;薪资直降30%&#xff0c;顿时有吃不起饭的赶脚。 好在有个兄弟内推…...

GPT时代,最令人担心的其实是“塔斯马尼亚效应”

目录 教育到底教什么&#xff1f; 过度依赖GPT可能导致文明退化 GPT可以帮助人类破解“学海无涯极限”悖论 春季学期伊始&#xff0c;全球各地的老师们如临大敌&#xff0c;因为学生们带着ChatGPT杀过来了。Study.com的调研显示&#xff0c;每10个学生中就有超过9个知道Chat…...

基于容器技术和服务发现的全新大数据平台弹性伸缩方法

随着科技的不断发展&#xff0c;各个行业都在不断地数字化和智能化。在这个过程中&#xff0c;大数据技术成为了许多行业的重要支撑。而随着大数据技术的普及&#xff0c;行业分类和设备装置的不断更新换代&#xff0c;弹性伸缩成为了一个不可避免的问题。本文将介绍基于服务发…...

php8 match

刚从 php7 升级到 php8 时 我在使用 switch 语句&#xff0c;结果出现了一个提示&#xff1a; "switch statement can be converted to match expression" 翻译过来就是&#xff1a; switch语句可以转换为match表达式 我当时在想&#xff0c;match 应该是php8 的…...

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站&#xff0c;会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后&#xff0c;网站没有变化的情况。 不熟悉siteground主机的新手&#xff0c;遇到这个问题&#xff0c;就很抓狂&#xff0c;明明是哪都没操作错误&#x…...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子&#xff0c;用于处理异步操作&#xff08;如数据加载&#xff09;中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误&#xff1a;捕获在 loader 或 action 中发生的异步错误替…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器

一.自适应梯度算法Adagrad概述 Adagrad&#xff08;Adaptive Gradient Algorithm&#xff09;是一种自适应学习率的优化算法&#xff0c;由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率&#xff0c;适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统&#xff0c;智慧工地全套源码&#xff0c;java版智慧工地源码&#xff0c;支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求&#xff0c;提供“平台网络终端”的整体解决方案&#xff0c;提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例&#xff0c;也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下&#xff1a; 定义实例工厂类&#xff08;Java代码&#xff09;&#xff0c;定义实例工厂&#xff08;xml&#xff09;&#xff0c;定义调用实例工厂&#xff…...

ElasticSearch搜索引擎之倒排索引及其底层算法

文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...

【C语言练习】080. 使用C语言实现简单的数据库操作

080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比

在机器学习的回归分析中&#xff0c;损失函数的选择对模型性能具有决定性影响。均方误差&#xff08;MSE&#xff09;作为经典的损失函数&#xff0c;在处理干净数据时表现优异&#xff0c;但在面对包含异常值的噪声数据时&#xff0c;其对大误差的二次惩罚机制往往导致模型参数…...