S1这样写可以吗
  • 板块灌水区
  • 楼主Starlit_Moon
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/10/26 20:13
  • 上次更新2024/10/26 20:51:59
查看原帖
S1这样写可以吗
1087584
Starlit_Moon楼主2024/10/26 20:13
#include<bits/stdc++.h>
using namespace std;
int n,a[100005],cnt,s[100005],f[100005];
int main(){
	freopen("a.in","r",stdin);
	scanf("%d",&n);
	for(int i = 1; i <= n; i++){
		scanf("%d",&a[i]);
	}
	sort(a+1,a+1+n);
	for(int i = 1; i <= n; i++){			
		f[a[i]]++;
		if(a[i] != a[i-1]){
			cnt++;	
		
			s[cnt] = a[i];
		}
	}
	for(int i = 1; i <= cnt; i++){
		if(f[s[i]] >= f[s[i-1]]){
			n -= f[s[i-1]];
			f[s[i-1]] = 0;
			
		}else{
			n -= f[s[i]];
			f[s[i-1]] -= f[s[i]];
			f[s[i]] += f[s[i-1]];
		}
	}
	cout << n;
	return 0; 
}
2024/10/26 20:13
加载中...