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

B4156 [厦门小学生 C++ 2023] 太空旅行

题目描述

在未来,太空旅行已经是一件稀松平常的事,星际部又宣称即将开通一条火星至天王星的航线。

所有的星际飞船必须先经过航线1 11(地球→ \to火星),再经过航线X XX(火星→ \to天王星)才能顺利抵达天王星。

为了避免星际飞船发生碰撞,每条航线只能有一架飞船正在行驶。已知星际飞船从地球到火星需要U ( i ) U(i)U(i)时间,火星到天王星需要V ( i ) V(i)V(i)时间。飞船们可能会滞留在火星,它们必须等待航线状态为空才能起飞。飞船到达火星和离开火星的顺序可能会不一致。

请计算从地球出发的N NN架星际飞船,全部抵达天王星,需要花费的最短时间。

输入格式

1 11行:一个整数N NN,表示星际飞船的数量。

2 22N + 1 N+1N+1行:第i + 1 i+1i+1行包含两个空格隔开的整数:U ( i ) U(i)U(i)V ( i ) V(i)V(i)

输出格式

输出1 11行,一个单独的整数,表示所有飞船抵达天王星需要的最短时间。

输入输出样例 #1

输入 #1

3 6 4 8 1 2 3

输出 #1

17

说明/提示

样例解释

最优方案总耗时为:2 + 6 + 8 + 1 = 17 2+6+8+1=172+6+8+1=17

飞船状态\时间地球→ \to火星出发时刻地球→ \to火星到达时刻火星→ \to天王星出发时刻火星→ \to天王星到达时刻
第 1 架2 228 888 8812 1212
第 2 架8 8816 161616 161617 1717
第 3 架0 002 222 225 55

3 33架飞船最先从地球出发抵达火星,然后到天王星。第3 33架飞船抵达火星后,第1 11架飞船即刻从地球出发。等第1 11架飞船抵达火星后,第2 22架飞船最后从地球出发。

【数据范围】

对于所有数据有:1 ≤ N ≤ 25000 1 \leq N \leq 250001N250001 ≤ U ( i ) , V ( i ) ≤ 50000 1 \leq U(i),V(i) \leq 500001U(i),V(i)50000

测试点编号特殊性质1 ≤ N ≤ 1 \leq N \leq1N1 ≤ U ( i ) , V ( i ) ≤ 1 \leq U(i),V(i) \leq1U(i),V(i)
1 ∼ 2 1\sim 21210 1010100 100100
3 ∼ 8 3\sim 838100 100100500 500500
9 ∼ 12 9\sim 1291210000 10000100005000 50005000
13 ∼ 14 13\sim 141314B25000 250002500050000 5000050000
15 ∼ 16 15\sim 161516A25000 250002500050000 5000050000
17 ∼ 20 17\sim 20172025000 250002500050000 5000050000

其中:

  • 特殊性质 A:保证所有的U ( i ) U(i)U(i)都相同。
  • 特殊性质 B:保证所有的V ( i ) V(i)V(i)都相同。

思路

考虑贪心算法,此题就是因为证明难度大才评为紫题,作者比较菜,所以不会证,但代码较简单。

代码

#include<bits/stdc++.h>usingnamespacestd;intn;structdid{inta,b;}p[30001];boolcmp(did x,did y){if(x.a<x.b){if(y.a<y.b)returnx.a<y.a;return1;}else{if(y.a<y.b)return0;returnx.b>y.b;}}intmain(){cin>>n;for(inti=1;i<=n;i++)cin>>p[i].a>>p[i].b;sort(p+1,p+1+n,cmp);intA=0,B=0;for(inti=1;i<=n;i++){A+=p[i].a;if(B<A)B=A;B+=p[i].b;}cout<<B<<endl;return0;}

注意

此题还有多倍经验。
P1248,P1561,P2123,P6243

http://www.jsqmd.com/news/449216/

相关文章:

  • 流量怎么用:以莆田“全到莆田过大年”为例——生成论视角下的注意力分配实践分析
  • 【C++进阶】万字长文带你死磕高级数据结构:并查集/树状数组/线段树/主席树 (附超全模板)
  • Tabbit浏览器 v
  • 实测才敢推!更贴合MBA需求的AI论文平台,千笔·专业学术智能体 VS 笔捷Ai
  • 数据库基本操作
  • 通常说算力是多少 FLOPS,怎么理解,GPU和CPU为什么差异这么大
  • 数据结构排序算法复习
  • 链表经典算法实现思路
  • zynq verilog iic读取pac1934电流和电压
  • 学术写作的“隐形盾牌”:书匠策AI如何让论文“安全通关”查重与AI检测?
  • JSP网页如何结合HTTP协议优化局域网内视频文件的秒传与目录结构保留?
  • Hash,布隆过滤器,hyperloglog
  • 2026年上海遗产继承律师电话查询推荐:实用查询指南分享 - 品牌推荐
  • 学术写作的“隐形裁缝”:书匠策AI如何用AI魔法让论文“改头换面”又“保真”
  • 一篇搞定蓝桥杯 C/C++ 基础知识点
  • HBuilder X 的下载与初识HTML5页面
  • 2026年中国遗嘱继承律所电话查询推荐:权威联系与使用指引 - 品牌推荐
  • [KV存储]从零构建高性能 KV 存储网络层
  • 学术写作的“变形记”:书匠策AI如何让论文“改头换面”却“灵魂不变”
  • 2026年免费降AI率网站合集,毕业生必备收藏
  • 南昌极简门制造企业哪家好用,性价比高的品牌推荐 - 工业品牌热点
  • 学术写作的“智能调音师”:书匠策AI如何让论文摆脱机械感,奏响原创乐章
  • 互联网大厂Java求职者面试全攻略:技术深度与精彩代码案例
  • 聊天系统 / 即时通讯(IM)技术文档
  • SQL 语句大全:最全面的语法格式指南
  • nodejs 网上商城商铺小程序多商家
  • 2026年特色泡菜选购指南,特色湘西姑娘泡菜实力强不强看这里 - mypinpai
  • springboot基于web的积分制零食自选销售平台的设计与实现(源码+文档+调试+vue+前后端分离)
  • 需要频繁修改文件、批量修改文档,或需要更灵活的时间设置怎么办?
  • python环境搭建