GESP编程共123题,本题是整站第1408题,已经有人完成了本题,加油!
小 A 写了一个 N×M 的矩阵 A,我们看不到这个矩阵,但我们可以知道,其中第 i 行第 j 列的元素 Ai,j 是 i 和 j 的 公倍数(i=1,…,N,j=1,…,M)。现在有 K 个小朋友,其中第 k 个小朋友想知道,矩阵 A 中最多有多少个元素可以是 k(k=1,2,…,K)。请你帮助这些小朋友求解。
注意:每位小朋友的答案互不相关,例如,有些位置既可能是 x,又可能是 y,则它同可以时满足 x,y 两名小朋友的要求。
方便起见,你只需要输出 ∑k=1Kk×ansk 即可,其中 ansk 表示第 k 名小朋友感兴趣的答案。
一行三个正整数 N,M,K。
输出一行,即 ∑k=1Kk×ansk。
请注意,这个数可能很大,使用 C++ 语言的选手请酌情使用long long
等数据类型存储答案。
输入 #1
2 5 2
输出 #1
9
输入 #2
100 100 100
输出 #2
185233
只有 A1,1 可以是 1,其余都不行。 A1,1,A1,2,A2,1,A2,2 都可以是 2,而其余不行。
因此答案是 1×1+2×4=9。
【题目解析】
Aij的元素是i和j的公倍数,意味着该数字能够整除i和j。
根据样例分析:K=2时,求的是k=1,2的和。k=1时,i=j=1,A11是1的公倍数,符合条件,有1个方案。k=2时,A11-A22的公倍数可以是2,其他的不行,有4种方案。按照题目输出:1*1+2*4=9.
枚举,如果k=4,公倍数方案是A11,A12,A14,A21,A22,A24,A41,A42,A44,有9种方案。4提供的贡献值是:4*9=36。9种方案分析,是{1,2,4}和{1,2,4}的两两组合,3*3=9种。
结论:1、i和j,有一个是k的倍数,即可满足。
2、4的约数有1,2,4.4也是1,2,4的倍数。4有多少个因子,统计出来。
3、因为是矩阵,两两相乘,就是每个数字提供的方案数。
【参考程序】
本站题目仅供学习,GESP版权归CCF所有,如有侵权请联系删除。站长陈老师QQ及微信:208234。