7198 2024. 01. 03 12:42:53 horvathabel Rendezés cpp17 Elfogadva 40/40 105ms 5616 KiB
#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n;
    cin>>n;
    int k;
    cin>>k;
    vector<int> pre;
    vector<int> v;
    pre.resize(n+1,0);
    for (int i=0; i<n;i++){
        int x;
        cin>>x;
        v.push_back(x);
    }
    for (int i=0; i<k;i++){
        int a,b;
        cin>>a>>b;
        a--;
        b--;
        pre[a]++;
        pre[b]--;
    }
    int ke=-1;
    int most=0;
    for (int i=0; i<n;i++){
        most+=pre[i];
        if (ke==-1 && most>0){
            ke=i;
        }
        if (most==0 && ke!=-1){
            sort(v.begin()+ke, v.begin()+i+1);
            ke=-1;
        }
    }
    int ans=0;
    for (int i=0; i<n;i++){
        if (v[i]==i+1) ans++;
    }
    cout<<ans<<endl;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 40/40
1 Elfogadva 0/0 3ms 1808 KiB
2 Elfogadva 0/0 14ms 2256 KiB
3 Elfogadva 2/2 3ms 2216 KiB
4 Elfogadva 2/2 3ms 2432 KiB
5 Elfogadva 2/2 3ms 2640 KiB
6 Elfogadva 2/2 3ms 2724 KiB
7 Elfogadva 2/2 3ms 2976 KiB
8 Elfogadva 2/2 3ms 2952 KiB
9 Elfogadva 2/2 3ms 3044 KiB
10 Elfogadva 2/2 3ms 2948 KiB
11 Elfogadva 2/2 98ms 4936 KiB
12 Elfogadva 2/2 98ms 4952 KiB
13 Elfogadva 2/2 100ms 5092 KiB
14 Elfogadva 1/1 100ms 5048 KiB
15 Elfogadva 2/2 100ms 5328 KiB
16 Elfogadva 2/2 101ms 5392 KiB
17 Elfogadva 2/2 104ms 5352 KiB
18 Elfogadva 2/2 105ms 5392 KiB
19 Elfogadva 2/2 103ms 5484 KiB
20 Elfogadva 1/1 103ms 5616 KiB
21 Elfogadva 2/2 103ms 5604 KiB
22 Elfogadva 2/2 103ms 5460 KiB
23 Elfogadva 2/2 103ms 5440 KiB