1 条题解
-
0
#include<bits/stdc++.h> using namespace std; int n,max_num=0; // [1] n-需要数值化的对象数量,max_num-记录出现过的最大特征值(用于后续遍历统计) int arr[100100]={}; // [2] arr-统计每个特征值的出现次数,下标对应特征值,元素值对应出现次数(初始化为0) int main(){ cin>>n; // [3] 输入需要数值化的对象数量n while(n--){ // [4] 循环处理每个对象 int t; cin>>t; // [5] 读取当前对象的特征值数量t int m; for(int i=1;i<=t;i++){ // [6] 遍历当前对象的t个特征值 cin>>m; // [7] 读取当前特征值m max_num=max(max_num,m); // [8] 更新最大特征值(确保后续遍历范围覆盖所有出现过的特征值) arr[m]++; // [9] 对应特征值m的出现次数+1 } } int max_t=0,max_s=0; // [10] max_t-出现次数最多的特征值(并列取最大),max_s-对应的最大出现次数 // 遍历所有出现过的特征值,统计出现次数最多的特征值 for(int i=1;i<=max_num;i++){ // 若当前特征值出现次数≥已有最大次数,更新最大次数和对应特征值(次数相同时,大的特征值会覆盖小的) if(arr[i]>=max_s){ max_s=arr[i]; max_t=i; } } cout<<max_t<<endl<<max_s; // [11] 输出出现次数最多的特征值、对应的出现次数 return 0; }
- 1
信息
- ID
- 1450
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者