CCF GESP 2026年6月认证 C++ 1级

编程题
共 2 道 每题 25 分 共计 50 分
第 1 题
去旅行
时间限制:1s 内存限制:512MB

题目描述

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

小杨同学住在 $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
输出:
693
样例解释:

方案1. 直飞价格为999;

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

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

因此最便宜的价格是693。

样例 2

输入:
9
3
8
7
输出:
9
样例解释:

方案1. 直飞价格为9;

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

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

因此最便宜的价格是9。

数据范围

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

第 2 题
交税
时间限制:1s 内存限制:512MB

题目描述

根据国家税收相关规定,劳务报酬需要按月预交个税,预交税率如下:

  1. 劳务报酬不超过 800 的,不需要预交个税;
  2. 劳务报酬超过 800 的,仅超过 800 的部分按照 20%(即 0.2)税率预交个税(不超过 800 的部分不需要预交个税);

例如,月劳务报酬为 1000.0,则按照规则 2 需要预交个税 (1000.0−800.0)×20%=40.00。

现在给定小杨同学 12 个月的月度劳务报酬,请帮小杨同学计算他这 12 个月应预交个税的总和。

输入格式

输入 12 行,每行一个浮点数,表示小杨同学 12 个月中每个月的劳务报酬。

每个浮点数恰好有一位小数。

输出格式

输出 1 行,一个浮点数,保留两位小数,表示小杨同学 12 个月应预交个税的总和。

样例说明

样例 1

输入:
932.0
1634.3
1790.4
2172.9
378.1
283.4
2761.9
3583.5
10.1
2324.9
1111.6
3812.3
输出:
2584.76
样例解释:
  1. 932.0符合规则2,超过800的部分为132.0,按照20%预交为132.0×20%=26.40;
  2. 1634.3符合规则2,超过800的部分为834.3,按照20%预交为834.3×20%=166.86;
  3. 1790.4符合规则2,超过800的部分为990.4,按照20%预交为990.4×20%=198.08;
  4. 2172.9符合规则2,超过800的部分为1372.9,按照20%预交为1372.9×20%=274.58;
  5. 378.1符合规则1,不需要预交个税;
  6. 283.4符合规则1,不需要预交个税;
  7. 2761.9符合规则2,超过800的部分为1961.9,按照20%预交为1961.9×20%=392.38;
  8. 3583.5符合规则2,超过800的部分为2783.5,按照20%预交为2783.5×20%=556.70;
  9. 10.1符合规则1,不需要预交个税;
  10. 2324.9符合规则2,超过800的部分为1524.9,按照20%预交为1524.9×20%=304.98;
  11. 1111.6符合规则2,超过800的部分为311.6,按照20%预交为311.6×20%=62.32;
  12. 3812.3符合规则2,超过800的部分为3012.3,按照20%预交为3012.3×20%=602.46;

总和为2584.76。

数据范围

小杨同学每月劳务报酬收入均为正,且恰好有一位小数,且不超过 4000.0。

编程题部分已到底了。