求助,无法搜到最后一位,全RE
那个大佬来帮一下
代码:
#include<iostream>
using namespace std;
const int N=1e5;
long long a[N],x[N],y[N],f[N],f1[N];
bool flag[N];
#define int long long
signed main()
{
int n,m,e=0;
cin>>n>>m;
for(int i=1;i<=n;i++) cin>>a[i];
for(int i=1;i<=m;i++) cin>>flag[i]>>x[i]>>y[i];
for(int i=1;i<=m;i++)
{
if(flag[i]==1)
{
a[x[i]]=y[i];
}
else
{
for(int j=x[i];j<=y[j]+2;j++)
{
f[a[j]]+=1;
}
int e=0,k=0;
for(int j=x[i];j<=y[i];j++)
{
if(e<f[a[j]])
{
e=max(e,f1[a[j]]);
k=a[j];
}
else if(e==f[a[j]])
{
k=max(k,a[j]);
}
f[a[j]]=0;
}
cout<<k<<endl;
}
}
return 0;
}