RE求调
查看原帖
RE求调
1406296
zhuiguangzhe111楼主2025/7/28 17:05
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
int a[N];
int n,m;
int main()
{
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	for(int i=1;i<=m;i++){
		int x,y;
		bool flag;
		cin>>flag>>x>>y;
		if(flag==0)
		{
			int cnt[N]={0};//数字出现次数 
			int max_cnt=0;//当前最大出现次数 
			int mode=0;//当前众数
			for(int j=x;j<=y;j++){
				int num=a[j];
				cnt[num]++;//统计当前数字num的出现次数 
				if(cnt[num]>max_cnt){
					max_cnt=cnt[num];//更新num当前出现的次数 
					mode=num;//更新num为最新众数 
				} 
			} 
			cout<<mode<<endl; 
		}
		else{
			a[x]=y;
		}
	}
	return 0;
}

数据范围是0<a i ​ ≤10 9 但如果将N调大将无法运行(改为long long)也不行怎么办

2025/7/28 17:05
加载中...