公司发工资问题 - 华中科技大学
某公司在发放员工工资时,使用固定面额的钞票,包括:100、50、20、10、5 和 1 元。现需根据输入的每位员工工资金额,统计公司总共需要准备的各种面额钞票的数量。要求不能进行找零操作,即支付金额必须恰好等于工资数额。当输入为 0 时,表示输入结束,该值不参与计算。
最终输出格式应为:“100: 张数, 50: 张数, 20: 张数, 10: 张数, 5: 张数, 1: 张数”,各面额之间用逗号分隔,仅输出一行结果。
输入由多行组成,每行为一个正整数,代表一位员工的工资。输入以 0 终止。
123
256
0
示例输出如下所示:
100:3,50:1,20:1,10:0,5:1,1:4
500
10
0
另一组输入示例如下:
100:5,50:0,20:0,10:1,5:0,1:0
亲和数问题 - 华中科技大学
定义一个数的因子为其所有真因数(即除自身以外的所有正因数)。例如,6 的真因数为 1、2 和 3。若两个不同的数 X 与 Y 满足:X 的所有真因数之和等于 Y,同时 Y 的所有真因数之和等于 X,则称 X 与 Y 构成一对“亲和数”。
题目给出多组查询区间 [l, r],对每组数据,要求找出该区间内最小的一个属于亲和数对中的数字。如果区间中不存在任何亲和数,则输出 “No”。
输入的第一行为整数 n,表示共有 n 组测试数据。接下来的 n 行,每行包含两个整数 X 和 Y,表示一个查询区间。
对于每一组数据,输出对应区间内的最小亲和数;若无满足条件的数,则输出 “No”。每组结果独占一行。
数据范围说明:1 ≤ n ≤ 100,且 1 ≤ X ≤ Y ≤ 100000。
2
200 300
250 1000
对应的输出样例为:
220
284