//活动地址: 牛客春招刷题训练营 - 编程打卡活动 #include <algorithm> #include<iostream> using namespace std; int cnt[10];// 开一个数组来存储 每个数字出现的次数 // 优化版, arr都不用开。 int main(){ int n, a; cin >> n; for(int i = 0; i < n; i++){ cin >> a; cnt[a]++; // 对 1 - 9 每个数字记数。 } sort(cnt + 1, cnt + 10); // cnt[1]为最小值, cnt[9]为最大值。 if(cnt[9] - cnt[1] >= 2) // 如果所有数字出现次数相等,或者出现最多的那些数字只比出现最少的那些数字多出现一次,那就能 YES, 否则就 NO 。 cout << "NO" << endl; else cout << "YES" << endl; return 0; } //活动地址: 牛客春招刷题训练营 - 编程打卡活动