
建立从数字到其出现次数的映射。在完成所有输入后按照要求对其进行筛选。
具体代码如下:
#include <iostream>
#include <unordered_map>
using namespace std;
int main()
{
int n;
cin >> n;
unordered_map<int, int> data;
while(n--)
{
int t;
cin >> t;
if(data.find(t) == data.end()) data[t] = 1;
else data[t]++;
}
auto iter = data.begin();
pair<int, int> ans(*iter);
iter++;
for(; iter != data.end(); iter++)
{
pair<int, int> cur(*iter);
if(cur.second == ans.second)
{
if(cur.first < ans.first) ans = cur;
}
else if(cur.second > ans.second) ans = cur;
}
cout << ans.first;
return 0;
}
本文介绍了一种使用C++和unordered_map数据结构统计输入数字频率的方法。通过建立数字到其出现次数的映射,该代码能够高效地处理大量数据,并找出出现频率最高的数字。对于初学者来说,这是一个很好的学习示例。
287

被折叠的 条评论
为什么被折叠?



