比赛 26暑假集训模拟赛3 评测结果 AAAATTTTTTTTTTT
题目名称 Election Queries 最终得分 24
用户昵称 rzzakioi 运行时间 34.125 s
代码语言 C++ 内存使用 4.32 MiB
提交时间 2026-07-06 10:08:35
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int n,q,a[200005],t[200005];
int main(){
    freopen("Queries.in","r",stdin);
    freopen("Queries.out","w",stdout);
    scanf("%d%d",&n,&q);
    for(int i=1;i<=n;i++)scanf("%d",&a[i]);
    for(int i=1;i<=n;i++)t[a[i]]++;
    while(q--){
        int p,x;
        scanf("%d%d",&p,&x);
        t[a[p]]--;
        a[p]=x;
        t[a[p]]++;
        int ans=-1;
        for(int i=1;i<=n;i++){
            for(int j=1;j<=n;j++){
                if(t[i]==0||t[j]==0)continue;
                bool flag=1;
                for(int k=1;k<=n;k++){
                    if(t[k]>t[i]+t[j]){
                        flag=0;break;
                    }
                }
                if(flag){
                    ans=max(ans,abs(i-j));
//                    printf("%d %d\n",i,j);
                }
            }
        }
        printf("%d\n",ans);
    }
    return 0;
}