【题目链接】

ybt 1374:铲雪车(snow)
洛谷 UVA10203 Snow Clearing
注:原题输入要求更复杂,本文代码无法通过。

【题目考点】

1. 图论:欧拉回路

2. 两点间距离公式

d i s = ( x 1 − x 2 ) 2 + ( y 1 − y 2 ) 2 dis = \sqrt{(x_1-x_2)^2+(y_1-y_2)^2} dis=(x1​−x2​)2+(y1​−y2​)2 ​

【解题思路】

所有的道路都是双车道,对于一条道路,铲雪车每次经过道路只能铲掉一侧的雪,需要来回走两趟才能完全清除这条道路上的雪。
该图是有向图,将每个路口视为顶点,每条车道是一条有向边,每条道路即为双向的有向边。
“铲雪车从起点一定可以到达任何街道”保证了这个图是弱连通图。
要想完成对所有道路铲雪,也就是要把每条边都走一次,这是一个求欧拉路径的问题。
每个路口连接的每条道路都会提供一个入度和一个出度,每个顶点的入度和出度一定相同。该图一定存在欧拉回路。
铲雪车从起点出发,按照欧拉回路顺序走遍图中的每条边(车道),最后回到起点,可以完成铲雪。整个过程中铲雪车一直在铲雪,速度是20km/h。

根据输入,使用两点间距离公式求出每条道路的长度,乘以2后就是所有车道(所有边)的总长度,除以行车速度,即可得到花费的总时间。

【注意】
注意单位换算:速度是km/h,而距离单位是m。
注意变量类型:要使用long long。
注意输出格式;输出分钟不足2位时,前面要补0。

【题解代码】

#include<bits/stdc++.h>
using namespace std;
int main()
{double dis = 0, time;long long h, m, ax, bx, ay, by;cin >> ax >> ay;while(cin >> ax >> ay >> bx >> by)dis += 2*sqrt((ax-bx)*(ax-bx)+(ay-by)*(ay-by));//dis:总距离 单位:米time = dis / 1000 / 20;//time:总时间,单位:小时h = floor(time);//小时数m = round((time - h)*60);//分钟数cout << h << ':' << setw(2) << setfill('0') << m;//输出分钟,不足2位时左边补0 return 0;
}

信息学奥赛一本通 1374:铲雪车(snow)相关推荐

  1. 信息学奥赛一本通(基础算法与数据结构-题解汇总目录)

    信息学奥赛一本通(C++版)在线评测系统 基础(二)基础算法   更新中...... 第一章高精度计算 1307[例1.3]高精度乘法 1308[例1.5]高精除 1309[例1.6]回文数(Noip ...

  2. 信息学奥赛一本通 (C++)上机练习

    信息学奥赛一本通(C++)上机练习 此书为娃儿的第一本刷题书.娃儿现在四年级 ,希望他能坚持下来.特开贴加油 luogu: disangan223 第一部分 C++语言 第一章 C++语言入门 T10 ...

  3. 信息学奥赛一本通_长乐一中老师演绎“奥赛传奇”

    董永建(右一)在课堂上. 台海网5月14日讯 据福州晚报报道,长乐一中有一位"传奇"老师--15年来,他辅导的学生在全国高中生信息学奥赛中获金牌3人次.银牌3人次.铜牌5人次:在全 ...

  4. 信息学奥赛一本通 提高篇 第5章 矩阵乘法

    例1 矩阵AXB 信息学奥赛一本通(C++版)在线评测系统 [矩阵乘法]矩阵A×B_Uletay-CSDN博客 矩阵乘法--矩阵A×B_vina的博客-CSDN博客 一本通1641[例 1]矩阵 A× ...

  5. 《信息学奥赛一本通提高篇》第6章 组合数学

    例1 计算系数(NOIP2011提高) 信息学奥赛一本通(C++版)在线评测系统 NOIP2011计算系数_nanhan27的博客-CSDN博客 「NOIP2011」 计算系数 - 组合数_TbYan ...

  6. 《信息学奥赛一本通 提高篇》

    提高篇 第一部分 基础算法 第1章 贪心算法 提高篇 第一部分 基础算法 第1章 贪心算法_青少年趣味编程-CSDN博客 提高篇 第一部分 基础算法 第1章 贪心算法 提高篇 第一部分 基础算法 第1 ...

  7. 信息学奥赛一本通 提高篇 第一部分 基础算法 第2章 二分与三分

    信息学奥赛一本通 提高篇 提高版 第一部分 基础算法 第2章 二分与三分 信息学奥赛一本通 提高篇 提高版 第一部分 基础算法 第2章 二分与三分_mrcrack的博客-CSDN博客_信息学奥赛一本通 ...

  8. 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题

    第1章   快速幂 1875:[13NOIP提高组]转圈游戏 信息学奥赛一本通(C++版)在线评测系统 第2 章  素数 第 3 章  约数 第 4 章  同余问题 第 5 章  矩阵乘法 第 6 章 ...

  9. 信息学奥赛一本通 1080:余数相同问题 2022.1.29 AC

    http://ybt.ssoier.cn:8088/show_source.php?runid=14630195 /* 信息学奥赛一本通 1080:余数相同问题 2022.1.29 AC http:/ ...

最新文章

  1. 为什么我的python没有run_为什么我的returncode=0而没有stdoutsubprocess.run?
  2. python函数的两种嵌套方法
  3. TVS选型(车载电子产品篇)
  4. iPhone5帮助了谁?
  5. Oracle10g在linux下安装详解
  6. linux中/usr下文件权限修改setuid导致的问题
  7. Anaconda创建python虚拟环境
  8. 前端学习(2953):idea里面使用vue插件
  9. 我的世界暮色森林java下载_我的世界暮色森林mod1.7.2下载-暮色森林整合包下载...
  10. Maven 项目管理 —— 安装与配置
  11. 『Python』skimage图像处理_旋转图像
  12. 【lstm做文本分类保存】
  13. 【LaTeX】下载及安装步骤
  14. android P adb shell dumpsys battery 使用
  15. idea中设置EcmaScript6
  16. 生活随记 - 火星梦
  17. 时尚漂亮的充电头,苹果安卓都能用,Anker安芯充20W上手
  18. API获取订单接口文档使用说明
  19. Docker安装部署及使用
  20. px4在ubuntu中make px4fmu-v2_default upload上传失败

热门文章

  1. Apache+Python+Windows进行CGI编程新手上路时的各种坑
  2. MYSQL的一知半解
  3. 《传播学史》读后感优秀范文5000字
  4. 京东无人超市的成长之路 | 如何利用人工智能技术在零售业做产品创新?
  5. java转换2进制_java里怎样把文件转换成二进制
  6. Eclipse编程常用快捷键大全
  7. ffmpeg + cuda(cuvid) 硬解码+像素格式转换(cpu主导)实战
  8. IFTTT的数据架构
  9. 1455: 数列有序
  10. smit 和 smitty的区别