2026年6月GESP真题及题解(C++一级):去旅行

题目描述
快暑假了,小杨同学正在计划出去旅行,前往目的地的方案多种多样,小杨同学想知道如何前往目的地最便宜。
小杨同学住在 A A A 市,旅行目的地是 B B B 市,小杨同学前往目的地有三种方案:
- 从 A A A 市直飞 B B B 市;
- 从 A A A 市坐高铁到 C C C 市,然后坐飞机到 B B B 市;
- 从 A A A 市坐高铁到 C C C 市,然后坐高铁到 B B B 市。
请帮小杨同学求出最便宜的出行方案的价格。
输入格式
输入包含 4 4 4 行,每行一个正整数:
- 第 1 1 1 行的正整数表示「从 A A A 市直飞 B B B 市」的价格;
- 第 2 2 2 行的正整数表示「从 A A A 市坐高铁到 C C C 市」的价格;
- 第 3 3 3 行的正整数表示「从 C C C 市坐飞机到 B B B 市」的价格;
- 第 4 4 4 行的正整数表示「从 C C C 市坐高铁到 B B B 市」的价格。
输出格式
输出一个正整数,表示 3 3 3 种方式中,最便宜的出行方案的价格。
输入输出样例 1
输入 1
999
105
699
588
输出 1
693
输入输出样例 2
输入 2
9
3
8
7
输出 2
9
说明/提示
样例解释 1
方案 1 1 1. 直飞价格为 999 999 999;
方案 2 2 2. 高铁转飞机价格为 105 + 699 = 804 105 + 699 = 804 105+699=804;
方案 3 3 3. 高铁的价格为 105 + 588 = 693 105 + 588 = 693 105+588=693;
因此最便宜的价格是 693 693 693。
样例解释 2
方案 1 1 1. 直飞价格为 9 9 9;
方案 2 2 2. 高铁转飞机价格为 3 + 8 = 11 3 + 8 = 11 3+8=11;
方案 3 3 3. 高铁的价格为 3 + 7 = 10 3 + 7 = 10 3+7=10;
因此最便宜的价格是 9 9 9。
数据范围
所有输入均为正整数,且不超过 10000 10000 10000。
思路分析
题目给出了四种价格:
a:A 市直飞 B 市的价格(方案一)b:A 市坐高铁到 C 市的价格c:C 市坐飞机到 B 市的价格(方案二后半段)d:C 市坐高铁到 B 市的价格(方案三后半段)
三种方案的总价分别为:
ab + cb + d
我们只需读入这四个数,计算这三个值,输出其中的最小值即可。
代码实现
cpp
#include <bits/stdc++.h>
using namespace std;
int main() {
int a, b, c, d;
cin >> a >> b >> c >> d;
int ans = a; // 初始为方案一
if (b + c < ans) ans = b + c; // 比较方案二
if (b + d < ans) ans = b + d; // 比较方案三
cout << ans; // 输出最便宜价格
return 0;
}
功能分析
- 输入:从标准输入读取 4 个正整数,依次为直飞价格、A→C 高铁、C→B 飞机、C→B 高铁。
- 处理:计算三种方案的总费用,并通过两次比较找出最小值。
- 输出:将最小值输出。
各种学习资料,助力大家一站式学习和提升!!!
cpp
#include<bits/stdc++.h>
using namespace std;
int main(){
cout<<"########## 一站式掌握信奥赛知识! ##########";
cout<<"############# 冲刺信奥赛拿奖! #############";
cout<<"###### 课程购买后永久学习,不受限制! ######";
return 0;
}
【秘籍汇总】(完整csp信奥赛C++学习资料):
1、csp/信奥赛C++,完整信奥赛系列课程(永久学习):
https://edu.csdn.net/lecturer/7901 点击跳转

2、CSP信奥赛C++竞赛拿奖视频课:
https://edu.csdn.net/course/detail/40437 点击跳转

https://edu.csdn.net/course/detail/41081 点击跳转

3、csp信奥赛高频考点知识详解及案例实践:
CSP信奥赛C++动态规划:
https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转
CSP信奥赛C++标准模板库STL:
https://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转
信奥赛C++提高组csp-s知识详解及案例实践:
https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转
4、csp信奥赛冲刺一等奖有效刷题题解:
信奥赛C++普及组CSP-J一等奖通关刷题题单及题解:
https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转
信奥赛C++普及组csp-j初赛&复赛真题题解(持续更新): https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转
信奥赛C++提高组csp-s初赛&复赛真题题解(持续更新):
https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转
5、GESP C++考级真题题解:

GESP(C++ 一级+二级+三级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转

GESP(C++ 四级+五级+六级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转

GESP(C++ 七级+八级)真题题解(持续更新):
https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转
· 文末祝福 ·
cpp
#include<bits/stdc++.h>
using namespace std;
int main(){
cout<<"跟着王老师一起学习信奥赛C++";
cout<<" 成就更好的自己! ";
cout<<" csp信奥赛一等奖属于你! ";
return 0;
}
