Acwing1123. 铲雪车(欧拉回路)
题目
随着白天越来越短夜晚越来越长,我们不得不考虑铲雪问题了。
整个城市所有的道路都是双向车道,道路的两个方向均需要铲雪。因为城市预算的削减,整个城市只有 1 辆铲雪车。
铲雪车只能把它开过的地方(车道)的雪铲干净,无论哪儿有雪,铲雪车都得从停放的地方出发,游历整个城市的街道。
现在的问题是:最少要花多少时间去铲掉所有道路上的雪呢?
输入格式
输入数据的第 1 行表示铲雪车的停放坐标 (x,y),x,y 为整数,单位为米。
下面最多有4000行,每行给出了一条街道的起点坐标和终点坐标,坐标均为整数,所有街道都是笔直的,且都是双向车道。
铲雪车可以在任意交叉口、或任何街道的末尾任意转向,包括转 U 型弯。
铲雪车铲雪时前进速度为 20 千米/时,不铲雪时前进速度为 50 千米/时。
保证:铲雪车从起点一定可以到达任何街道。
输出格式
输出铲掉所有街道上的雪并且返回出发点的最短时间,精确到分钟,四舍五入到整数。
输出格式为”hours:minutes”,minutes不足两位数时需要补前导零。
具体格式参照样例。
数据范围
−106≤x,y≤106
所有位置坐标绝对值不超过 106。
输入样例:
0 0
0 0 10000 10000
5000 -10000 5000 10000
5000 10000 10000 10000
输出样例:
3:55
思路
- 题目里每一个节点都至少有一条无向边,那么每一个节点的入度和出度都是一样大的,并且连通,那么这个图肯定存在欧拉回路,那么只要每一个边只过一遍就是答案了
代码
#include <cstring>
#include <iostream>
#include <algorithm>
#include <cmath>using namespace std;int main()
{double x1, y1, x2, y2;cin >> x1 >> y1;double sum = 0;while (cin >> x1 >> y1 >> x2 >> y2){double dx = x1 - x2;double dy = y1 - y2;sum += sqrt(dx * dx + dy * dy) * 2;}int minutes = round(sum / 1000 / 20 * 60);int hours = minutes / 60;minutes %= 60;printf("%d:%02d\n", hours, minutes);return 0;
}
Acwing1123. 铲雪车(欧拉回路)相关推荐
- 算法提高课-图论-欧拉回路和欧拉路径-AcWing 1123. 铲雪车:披着欧拉回路外衣的小学数学题
文章目录 题目解答 无向图的一笔画 有向图的一笔画 题目来源 题目解答 来源:acwing 分析: 对于一个给定的图,怎样判断是否存在着一个恰好包含了所有的边,并且没有重复的路径?这就是一笔画问题.用 ...
- 【图论专题】欧拉路径和欧拉回路
A.AcWing 1123. 铲雪车(欧拉路的简单思想) 我们将这个图看成有向图,对于每输入一组数据加两条有向边,需要每条边都至少走一遍 我们先回想一下存在有向图的欧拉路径的充分必要条件 所有点的入度 ...
- 信息学奥赛一本通 1374:铲雪车(snow)
[题目链接] ybt 1374:铲雪车(snow) 洛谷 UVA10203 Snow Clearing 注:原题输入要求更复杂,本文代码无法通过. [题目考点] 1. 图论:欧拉回路 2. 两点间距离 ...
- 算法提高课——3.10 欧拉路径和欧拉回路
欧拉路径和欧拉回路 哥尼斯堡七桥问题 以下内容摘自<信息学奥赛一本通·提高篇>. 欧拉回路问题是图论中最古老的问题之一.它诞生于18世纪的欧洲古城哥尼斯堡,普瑞格尔河流经这座城市,人们在两 ...
- 骑马修栅栏(fence) 、铲雪车(snow)
问题 K: 骑马修栅栏(fence) 时间限制: 1 Sec 内存限制: 128 MB 题目描述 农民John每年有很多栅栏要修理.他总是骑着马穿过每一个栅栏并修复它破损的地方. John是一个与其 ...
- [模板][持续更新]欧拉回路与欧拉路径浅析
Luogu P2731 骑马修栅栏 Riding the Fences 题目背景 Farmer John每年有很多栅栏要修理.他总是骑着马穿过每一个栅栏并修复它破损的地方. 题目描述 John是一个与 ...
- uoj 117 欧拉回路
1.判断是否为欧拉存在欧拉回路---裸的判断 欧拉回路就是看一笔能不能把途中所有的边跑完没得重复 对于无向边----建立双向边判断每个点的入度是否为2的倍数 1.1 对于有向边---建立单向边判断 ...
- 图论--欧拉路,欧拉回路(小结)
在题目中在慢慢细说概念 1.HDU - 3018 Ant Trip 题目大意:又N个村庄,M条道路.问须要走几次才干将全部的路遍历 解题思路:这题问的是有关欧拉路的判定 欧拉路就是每条边仅仅能走一次, ...
- hdu 1878 欧拉回路
欧拉回路 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
最新文章
- 错误:AttributeError: module 'enum' has no attribute 'IntFlag'
- 滴滴开源的分布式id生成系统
- 的写法_横、竖的写法
- 2017年度最值得读的AI论文评选 | 大张旗鼓送福利
- 叮叮叮~~~~网络面试题(一)来了☺
- 今日恐慌与贪婪指数为77 贪婪程度有所上升
- JPA的双向一对一关联实现示例
- Linux和Windows下使用指定的JDK运行jar包
- 图:活动现场双屏管理系统V3-多线程抽奖版软件,完美升级收工!历时3个月,艰辛坎坷...
- 如何下载百度文库文章
- three.js 05-06 之 CylinderGeometry 几何体
- android 链接打开app,Android 实现浏览器打开app
- 实战一个项目后,谈谈 Rust 语言的优点和缺点
- Cocos2dx基础手册
- js URLEncode函数
- 东北大学软件项目管理与过程改进复习提纲(2020)——第七章《项目成本管理》
- 基于51单片机的指纹解锁自动开门
- 工作两周年记------今晚和三个兄弟一起痛快地喝了一次, 在《祝你一路顺风》的旋律中!
- 腾讯技术分享:微服务接口设计原则
- 计算机考研难度2017,2017大专生考研难度分析
热门文章
- 【转载】 有道笔记-打卡50件事
- 孩子学python_【二孩家庭要注意什么】二孩家庭要怎么教育_二孩家庭的孩子最好间隔几岁 - 妈妈网百科...
- java暗黑再临-战神之怒_暗黑再临战神之怒
- 大破才能大立?数字化转型助你说不!影子、柔性组织的决策与效率提升
- 推荐一些IEDA,Eclipse十分好用的插件
- mit scheme常用命令
- php str splice,PHP array_splice()函数使用方法
- python爬取四川建设行业数据共享平台
- class file has wrong version 55.0, should be 52.0
- 项目需求分析(那周余嘉熊掌将得队)