CCF GESP 2025年9月认证 C++ 1级
三
编程题
第 1 题
商店折扣
题目描述
商店正在开展促销活动,给出了两种方案的折扣优惠。第一种方案是购物满 $x$ 元减 $y$ 元;第二种方案是直接打 $n$ 折,也就是说价格变为原先的 $\frac{n}{10}$。这里的 $x,y,n$ 均是正整数,并且 $1≤y<x,1≤n<10$。
需要注意的是,第一种方案中满减优惠只能使用一次。例如购物满 10 元减 3 元时,若挑选了价格总和为 33 元的物品,只能减免 3 元,需要支付 30 元。
小明在商店挑选了价格总和为 $p$ 元的物品,结账时只能使用一种优惠方案。小明最少需要支付多少钱呢?
输入格式
四行,四个正整数 $x,y,n,p$,含义见题目描述。
输出格式
一行,一个小数,表示小明最少需要支付多少钱,保留两位小数。
样例说明
样例 1
输入:
8
7
9
10
输出:
3.00
样例 2
输入:
8
7
2
11
输出:
2.20
数据范围
对于所有测试点,保证 $1≤y<x≤100,1≤n<10,1≤p≤100$。
第 2 题
金字塔
题目描述
金字塔由 $n$ 层石块垒成。从塔底向上,每层依次需要 $n×n,(n−1)×(n−1),⋯,2×2,1×1$ 块石块。请问搭建金字塔总共需要多少块石块?
输入格式
一行,一个正整数 $n$,表示金字塔的层数。
输出格式
一行,一个正整数,表示搭建金字塔所需的石块数量。
样例说明
样例 1
输入:
2
输出:
5
样例 2
输入:
5
输出:
55
数据范围
对于所有测试点,保证 $1≤n≤50$。
编程题部分已到底了。