测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A18557. 去旅行

填空题 容易

题目描述

去旅行

题目描述

快暑假了,小杨同学正在计划出去旅行,前往目的地的方案多种多样,小杨同学想知道如何前往目的地最便宜。

小杨同学住在 A 市,旅行目的地是 B 市,小杨同学前往目的地有三种方案:

  1. 从 A 市直飞 B 市;
  2. 从 A 市坐高铁到 C 市,然后坐飞机到 B 市;
  3. 从 A 市坐高铁到 C 市,然后坐高铁到 B 市。

请帮小杨同学求出最便宜的出行方案的价格。

输入格式

输入包含 4 行,每行一个正整数:

  • 第 1 行的正整数表示「从 A 市直飞 B 市」的价格;
  • 第 2 行的正整数表示「从 A 市坐高铁到 C 市」的价格;
  • 第 3 行的正整数表示「从 C 市坐飞机到 B 市」的价格;
  • 第 4 行的正整数表示「从 C 市坐高铁到 B 市」的价格。

输出格式

输出一个正整数,表示 3 种方式中,最便宜的出行方案的价格。

样例

输入样例 1

999
105
699
588

输出样例 1


693

样例解释 1

方案 1. 直飞价格为 999;

方案 2. 高铁转飞机价格为 105+699=804

方案 3. 高铁转高铁价格为 105+588=693

因此最便宜的价格是 693。

输入样例 2

123
4
9
3
87

输出样例 2

9

样例解释 2

方案 1. 直飞价格为 123;

方案 2. 高铁转飞机价格为 3+8=11

方案 3. 高铁转高铁价格为 3+7=10

因此最便宜的价格是 9。

数据范围

所有输入均为正整数,且不超过 10000。

参考答案

# 读取第1个数据:从A市直飞B市的价格 a = int(input()) # 读取第2个数据:从A市坐高铁到C市的价格 b = int(input()) # 读取第3个数据:从C市坐飞机到B市的价格 c = int(input()) # 读取第4个数据:从C市坐高铁到B市的价格 d = int(input()) # 计算方案1的总价格:A市 直飞 B市 price1 = a # 计算方案2的总价格:A市高铁到C市,再飞机到B市 price2 = b + c # 计算方案3的总价格:A市高铁到C市,再高铁到B市 price3 = b + d # 先假设方案1是最便宜的(打擂台思想) min_price = price1 # 如果方案2比当前最便宜的价格还低,就更新最小值 if price2 < min_price: min_price = price2 # 如果方案3比当前最便宜的价格还低,就更新最小值 if price3 < min_price: min_price = price3 # 输出三种方案中最便宜的出行价格 print(min_price)
上一题 下一题