专栏文章
题解:P14566 【MX-S12-T1】取模
P14566题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @min33z3z
- 此快照首次捕获于
- 2025/12/01 19:47 3 个月前
- 此快照最后确认于
- 2025/12/01 19:47 3 个月前
题目简述
数组 ,正整数 ,把每个 除以 的余数放进数组 ,你的得分就是 中max减min。问最大得分是多少
第一步:看看 p 很大时的情况
如果 比数组中最大的数还要大,那么每个数除以 的余数就是它自己。
这时候得分就是:
第二步:看看 p 比较小时的情况
余数只能在 到 之间,所以最大值减最小值最大只能是 。
如果 很小,这个上界也很小,就舍弃掉
那问题来了:
如何让差值变大?
我们想要让余数中有一个是 (最大),还有一个是 (最小),这样差值就是
什么时候会出现 呢?当某个数 满足 ,也就是 能被 整除
什么时候会出现 呢?当某个数 能被 整除
所以我们要找的 要同时是某个 的约数,也是某个 的约数
直接找所有可能的 太麻烦,数据太大时会超时。
我们想想,其实最大得分只有两种可能:
直接取 很大,得分是
取 约为最大值的一半,这样可能得到大约 的得分
那最终就是:
第二次写文,求通
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...