2 条题解
-
0
#include <stdio.h> #include <stdlib.h> #include<cstring> #define N 1001//此数组包含1001个整形数组 int x[N], f[N]; int main() { memset(x, 0, sizeof(x)); memset(f, 0, sizeof(f));//使用memset函数将数组初始化 int i, max, ans;//循环计数,记录最大频率,答案 int n, x1; scanf("%d%d", &n, &x1); x[1] = x1; for (i = 2; i <= n; i++) { x[i] = ((x[i - 1] * 37 + 33031) % n) + 1; } for (i = 1; i <= n; i++) { //计算数组f中每个元素频率 f[x[i]]++;//对数组f中与数组x中当前元素相等的元素进行计数 } max = -1; ans = -1;//初始化 for (i = 1; i <= n; i++) { //查找数组f中最大频率及对应元素 if (f[i] > max) { max = f[i]; ans = i;//若成立,更新 } } printf("%d\n",ans); return 0; }
- 1
信息
- ID
- 110
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 6
- 标签
- 递交数
- 161
- 已通过
- 49
- 上传者