1 条题解
-
0
自动搬运
来自洛谷,原作者为

chen_zhe
Aya 敲可爱的~搬运于
2025-08-24 22:39:20,当前版本为作者最后更新于2022-08-07 17:17:40,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
文文的数学游戏
解法
为方便表述,下面令 。
对于第一问, 的最大值即 中的最小值。因为 。当 大于 中的最小值,则存在至少一个 使得 ,此时 。而当 取到 中的最小值 可以让 全部取到 ,这样就可以使得 最大。
有多少种取法?令 $b_i=a_{\min},2a_{\min},\dots,na_{\min}(b_i \leq a_i)$ 都是不会改变 的。考虑 前面的系数最大值 ,则 。由于可以对每个 ,任取 ,则取法的答案为 。记得开 long long,以及边乘边取模。
#include <iostream> using namespace std; int a[100050],n,mgcd=1<<30; const int mod=1e9+7; int main() { cin >> n; for (int i=1;i<=n;i++) { cin >> a[i]; mgcd=min(mgcd,a[i]); } long long ans=1; for (int i=1;i<=n;i++) ans=(long long)ans*(a[i]/mgcd)%mod; cout << mgcd << " " << ans << endl; return 0; }
- 1
信息
- ID
- 7798
- 时间
- 2000ms
- 内存
- 512MiB
- 难度
- 2
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者