比赛 2026.8.26 评测结果 WWWTTTWWTTTTTTTTTTTT
题目名称 interval 最终得分 0
用户昵称 Ruyi 运行时间 31.597 s
代码语言 C++ 内存使用 10.13 MiB
提交时间 2026-08-26 12:44:12
显示代码纯文本
#include<bits/stdc++.h>
#define ll long long
#define N 250001
using namespace std;
ll n,q,a[N],b[N],l,r,suma[N],sumb[N],cnt[N],maxx,c[N],d[N],num;
bool flag;
int main(){
    freopen("intervallavretni.in","r",stdin);
    freopen("intervallavretni.out","w",stdout);
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    cin>>n>>q;
    for(int i=1;i<=n;i++){
        cin>>a[i]>>b[i];
        suma[i]=suma[i-1]+a[i];
        sumb[i]=sumb[i-1]+b[i];
    }
    if(n<101&&q<101){
        while(q--){
            cin>>l>>r;
            flag=true;
            l++;
            r++;
            memset(cnt,0,sizeof(cnt));
            maxx=0;
            for(int i=l;i<=r;i++){
                cnt[a[i]]++;
                c[i]=a[i];
                maxx=max(maxx,a[i]);
            }
            for(int i=1;i<=maxx;i++){
                for(int j=l;j<=r;j++)
                if(c[j]==i){
                    if(c[j]<b[j]){
                        if(cnt[c[j]]==1){
                            flag=false;
                            break;
                        }else{
                            cnt[c[j]]--;
                            c[j]++;
                           cnt[c[j]]++;
                        }
                    }
                }
                if(!flag) break;
            }
            if(flag) cout<<1<<' ';
            else cout<<0<<' ';
        }
    }else{
        while(q--){
            cin>>l>>r;
            l++;
            r++;
            num=0;
            for(int i=l;i<=r;i++) d[++num]=a[i];
            sort(d+1,d+num+1);
            flag=true;
            if(d[1]!=1){
                cout<<0<<' ';
                continue;
            }
            for(int i=1;i<num;i++)
            if(d[i+1]-d[1]>1){
                flag=false;
                break;
            }
            if(flag) cout<<1<<' ';
            else cout<<0<<' ';
        }
    }
    return 0;
}