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

绕距#C语言

在城市道路规划中,绕距是一个很重要的概念,指的是城市中两个重要人员聚集点之间的欧几里得距离(欧氏距离)与曼德拉距离之差的绝对值。一般而言,绕距越小,则城市交通参与者在这两个地点之间所走的“冤枉路”就越小。其中,欧几里得距离(欧氏距离)表示两点间的直线距离,而曼哈顿距离指的是只沿着横平竖直的城市街道从起点到达终点的最短距离,如下图所示:


由此不难推出两种距离的公式:

两点间欧几里得距离 =(x1−x2)2+(y1−y2)2=(x1​−x2​)2+(y1​−y2​)2​.

两点间曼哈顿距离 =∣x1−x2∣+∣y1−y2∣=∣x1​−x2​∣+∣y1​−y2​∣

在生活中,我们也常常想,为什么非要走横平竖直的街道到达目的地呢?如果我能乘坐直升机的话,岂不是可以直接飞过去了?实际上,这就是一种尽可能的缩小绕距的方法。

现在给出两点的坐标,求两点之间的绕距。

输入描述:

第一行包含两个个整数 x1,y1x1​,y1​ ( −104≤x1,y1≤104−104≤x1​,y1​≤104 ) ,分别表示起点的横坐标和纵坐标。

第二行包含两个个整数 x2,y2x2​,y2​ ( −104≤x2,y2≤104−104≤x2​,y2​≤104 ) ,分别表示终点的横坐标和纵坐标。

输出描述:

输出一个实数,即起点与终点之间的绕距。注意,由于浮点数存在误差,只要您的答案与标准答案之间的误差不超过 10−610−6, 您的答案就会被认为是正确的。

#include <math.h>
#include <stdio.h>
#include <stdlib.h>int main() {int x1,y1,x2,y2,n;double m;scanf("%d %d",&x1,&y1);scanf("%d %d",&x2,&y2);n=abs(x1-x2)+abs(y1-y2);m=sqrt(pow((x1-x2),2)+pow((y1-y2),2));printf("%lf",n-m);return 0;
}

http://www.xdnf.cn/news/585397.html

相关文章:

  • IP大科普:住宅IP、机房IP、原生IP、双ISP
  • Keepalived 与 LVS 集成及多实例配置详解
  • React 与 TypeScript 极客园移动端
  • OpenCV CUDA模块图像过滤------用于创建一个最小值盒式滤波器(Minimum Box Filter)函数createBoxMinFilter()
  • Android 内存溢出(OOM)的 Kotlin 排查与优化指南
  • 博客打卡-0/1背包问题,回溯法
  • 类和对象(4)--《Hello C++ Wrold!》(6)--(C/C++)--赋值运算符重载,取地址和const取地址操作符重载
  • 嵌入式STM32学习——串口USART 2.2(串口中断接收)
  • Python字符串格式化(二): f-string的进化
  • 企业级爬虫进阶开发指南
  • 【linux知识】sftp配置免密文件推送
  • 开搞:第四个微信小程序:图上县志
  • 获取印度股票市场API
  • 关于XILINX的XDC约束文件编写
  • HarmonyOS 鸿蒙应用开发基础:EventHub,优雅解决跨组件通信难题
  • 10.IIC和BH1750
  • 基于单片机的室内采光及可燃气体泄漏报警装置设计
  • SCons构建工具使用指南及示例
  • JAVA SE — 循环与分支和输入输出
  • 有没有开源的企业网盘,是否适合企业使用?
  • 记录:express router,可以让node.js后端文件里的路由分布的更清晰
  • vim以及vi编辑器常用快捷键指令
  • 服务器操作系统调优内核参数(方便查询)
  • 复杂项目中通过使用全局变量解决问题的思维方式
  • 2025中青杯数学建模B题思路+模型+代码
  • 【TTS回顾】CosyVoice 深度解析:基于LLM的TTS模型
  • iOS 直播弹幕功能的实现
  • 前端三件套之html详解
  • DevOps体系之Jmeter
  • java面试每日一背 day2