243412026-02-09 17:01:46abcdRendezéscpp17Hibás válasz 5/40119ms1844 KiB
#include <bits/stdc++.h>
using namespace std;
using pii = pair<int, int>;

int main(){
    int n,m;cin>>n>>m;
    vector<int> a(n+1);
    for(int i=1;i<=n;i++)cin>>a[i];
    vector<pii> b(m);
    for(int i=0;i<m;i++){
        int x,y;cin>>x>>y;
        b[i]={x,y};
    }
    sort(b.begin(),b.end());
    int r=0;
    vector<int> aa(n+1);
    for(auto [x,y]:b){
        for(int i=r+1;i<x;i++)aa[i]=1;
        r=max(r,y);
    }
    for(int i=r+1;i<=n;i++)aa[i]=1;
    int l=1;
    for(int i=1;i<=n;i++){
        if(aa[i]==1){
            if(i-l>1)sort(a.begin()+l,a.begin()+i);
            l=i+1;
        }
    }
    if(l<=n)sort(a.begin()+l,a.end());
    int c=0;
    for(int i=1;i<=n;i++)if(a[i]==i)c++;
    cout<<c<<'\n';
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base5/40
1Elfogadva0/01ms508 KiB
2Hibás válasz0/016ms564 KiB
3Hibás válasz0/21ms316 KiB
4Hibás válasz0/21ms316 KiB
5Hibás válasz0/21ms316 KiB
6Hibás válasz0/21ms508 KiB
7Hibás válasz0/22ms316 KiB
8Hibás válasz0/22ms316 KiB
9Hibás válasz0/22ms408 KiB
10Hibás válasz0/22ms316 KiB
11Hibás válasz0/2114ms1820 KiB
12Hibás válasz0/2112ms1844 KiB
13Hibás válasz0/2112ms1824 KiB
14Hibás válasz0/1112ms1832 KiB
15Hibás válasz0/2114ms1832 KiB
16Hibás válasz0/2116ms1820 KiB
17Elfogadva2/2118ms1840 KiB
18Hibás válasz0/2119ms1828 KiB
19Hibás válasz0/2116ms1844 KiB
20Elfogadva1/1116ms1828 KiB
21Elfogadva2/2115ms1820 KiB
22Hibás válasz0/2119ms1840 KiB
23Hibás válasz0/2116ms1844 KiB