题解 | 小欧的数组修改
#include <iostream> #include <map> using namespace std; int main() { int n, count = 0, tmp; cin >> n; map<int, int> mp; for(int i = 0; i < n; i++){ cin >> tmp; mp[tmp]++; } for(auto a:mp){ if(a.second>count) count = a.second; } if(count==n)//若所有元素均相同,则不改变元素 cout << n << endl; else cout << ++count<< endl; return 0; } // 64 位输出请用 printf("%lld")