c++c语言均可
第一题 盈亏问题
题目背景及描述
成书于汉代的《九章算术》是我国古代的一本数学专著。在其中一个章节里,讨论了一个盈亏问题:
今有(人)买(物),
(每)人出八(钱)盈余三(钱),
(每)人出七(钱)不足四(钱),
问人数、物价各几何?
大意是说,一群人组团买一件物品,若每人出 88 元,则比物品的价格多出了 33 元;若每人出 77 元,则比物品的价格少了 44 元,求物品的价格以及参与的人数。《九章算术》提出的解法比西方至少领先了一千多年。
假设有一群人买一件物品,如果每个人出 aa 元,则所付的总金额比物品的价格多了 xx 元;如果每个人出 a−1a−1 元,则所付的总金额比物品的价格少了 yy 元。给定 a,x,ya,x,y求人数及物品的价格。
输入格式
单独一行:三个整数:a,xa,x 及 yy。
输出格式
两个整数:第一个整数表示参与的人数,第二个整数表示物品的价格,中间用一个空格分开。
样例
输入数据#1
8 3 4
Copy
输出数据#1
7 53
Copy
输入数据#2
5 2 6
Copy
输出数据#2
8 38
Copy
数据范围/约定
1≤a≤10001≤a≤1000
1≤x≤10001≤x≤1000
1≤y≤10001≤y≤1000
第二题 手机充电
题目描述
小爱在野外游玩时,手机没电了,幸好,他带了一些充电宝。
已知市面上一共有 nn 种型号的充电宝,其中型号为 ii 的充电宝中每 1%1 的电量可以使小爱的手机继续使用 x_ix
i
秒。
小爱有 mm 个充电宝,其中第 ii 个充电宝的型号为 t_it
i
,剩余电量为 a_i%a
i
。他按给定顺序使用充电宝,当一个充电宝的
电量耗尽时,会选择换一个充电宝接着使用。(假设充电宝在不使用的时候不会有电量损耗)
请你帮小爱计算出他的手机还能继续使用多长时间。
输入格式
第一行两个用空格隔开的正整数 n,mn,m 。
第二行 nn 个用空格隔开的正整数,其中第 ii 个表示 x_ix
i
。
接下来 mm 行,每行两个用空格隔开的正整数,其中第 ii 行按顺序表示 t_i,a_it
i
,a
i
。
输出格式
输出共一行,一个整数,表示小爱的手机还能继续使用的时间。
样例
输入数据#1
3 4
200 300 400
1 50
2 100
3 10
2 20
Copy
输出数据#1
50000
Copy
解释#1
第 1 个充电宝能使用 10000 秒
第 2 个充电宝能够使手机继续使用 30000 秒
第 3 个充电宝能够使手机继续使用 4000 秒
第 4 个充电宝能够使手机继续使用 6000 秒
所以用上所有的充电宝能够使手机继续使用 50000 秒。
数据范围
n≤500,m≤10^4,1≤x_i≤600,1≤t_i≤n,1≤a_i≤10^5n≤500,m≤10
4
,1≤x
i
≤600,1≤t
i
≤n,1≤a
i
≤10
5
。
第三题 魔法球
题目描述
小爱有 nn 个魔法球,每个魔法球有一个颜色 a_ia
i
。小爱每施展一次魔法可以改变一个球的颜色,现在小爱想要对其中一些球施展魔法,使得所有魔法球的颜色种类不超过 kk 种。
请问小爱最少需要施展多少次魔法?
输入格式
第一行两个正整数 n,kn,k;
第二行 nn 个正整数 a_1,a_2,⋯ ,a_na
1
,a
2
,⋯,a
n
输出格式
一个整数,表示最少需要施展多少次魔法?
样例
输入数据#1
4 3
1 2 3 4
Copy
输出数据#1
1
Copy
输入数据#2
6 1
1 1 1 2 2 6
Copy
输出数据#2
3
Copy
数据范围/约定
对于 30%30% 的测试数据满足:1≤n≤1001≤n≤100。
对于 100%100% 的测试数据满足:1≤n≤2×10^{5}1≤n≤2×10
5
。
1≤k≤n1≤k≤n
1≤a_i≤n1≤a
i
≤n。
第四题 古董鉴定
题目描述
某地出土了一批古董,每件古董有三个属性,分别是 年代, 硬度和 艺术价值,其中第 ii 件古董的名称为 s_is
i
, 年代为 a_ia
i
, 硬度为 b_ib
i
, 艺术价值为 c_ic
i
。对于任意两件古董来说,若某个属性的数值相差达到 100100,则数值较小的那件古董是不可靠的,应标记为赝品,请将赝品排出后,输出剩余古董名单。
输入格式
第一行:单个正整数 nn。
之后 nn 行每行一个字符串 s_is
i
与三个正整数 a_ia
i
,b_ib
i
,c_ic
i
分别表示一件古董的 年代, 硬度和 艺术价值。
输出格式
如果所有古董都被排除了,输出 There is no winner.
否则,第一行输出 Winning list:,然后按输入顺序输出所有保留的古董编号,每个单独一行。
样例
输入数据#1
5
A 1 1 1
B 20 20 20
C 40 40 40
D 80 80 80
E 120 120 120
Copy
输出数据#1
Winning list:
C
D
E
Copy
输入数据#2
3
Ai 1 100 20
Be 101 101 21
Ct 40 80 121
Copy
输出数据#2
Winning list:
Ct
Copy
输入数据#3
2
Old 1 100 121
Egg 101 101 21
Copy
输出数据#3
There is no winner.
Copy
数据范围/约定
1≤n≤2\times 10^51≤n≤2×10
5
。
∣si∣∣si∣ 表示 s_is
i
的长度,有 1≤∣s_i∣≤101≤∣s
i
∣≤10。
1≤a_i,b_i,c_i≤10^91≤a
i
,b
i
,c
i
≤10
9
。
麻烦大家了