9820 2024. 03. 08 10:17:10 UnluckY Előzések cpp17 Elfogadva 100/100 483ms 9544 KiB
#include <bits/stdc++.h>


using namespace std;

int main(){

    int n, q; cin >> n >> q;
    vector<int> v(n+1, -1); // melyik autó hányadik helyen
    vector<int> v2(n+1, -1); // melyik helyen hányadik autó
    vector<int> el(n+1, 0); // kit hányszor eléőztek meg
    int maxi = 0; // melyik autót előzték meg a legtöbbször

    for (int i = 1; i <= n; i++){
        int a; cin >> a; v[a] = i;
        v2[i] = a;
    }

    for (int i = 0; i < q; i++){
        int a; cin >> a;
        int kit = v2[v[a]-1];
        v[a] -= 1;
        v[kit] += 1;
        v2[v[a]] = a;
        v2[v[kit]] = kit;

        el[kit]++;
        if (el[maxi] < el[kit]){
            maxi = kit;
        }
        if (el[maxi] == el[kit] && kit < maxi){
            maxi = kit;
        }

        cout << maxi << endl;

        //for (int j : v2) cout << j << " ";
        //cout << endl;

    }


    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
subtask1 0/0
1 Elfogadva 3ms 1808 KiB
subtask2 30/30
2 Elfogadva 3ms 2056 KiB
3 Elfogadva 3ms 2276 KiB
4 Elfogadva 4ms 2532 KiB
5 Elfogadva 4ms 2740 KiB
6 Elfogadva 4ms 3088 KiB
7 Elfogadva 4ms 3064 KiB
subtask3 70/70
8 Elfogadva 138ms 4332 KiB
9 Elfogadva 202ms 5300 KiB
10 Elfogadva 241ms 5904 KiB
11 Elfogadva 275ms 7028 KiB
12 Elfogadva 224ms 7312 KiB
13 Elfogadva 273ms 7808 KiB
14 Elfogadva 280ms 8568 KiB
15 Elfogadva 483ms 9304 KiB
16 Elfogadva 321ms 9268 KiB
17 Elfogadva 375ms 9264 KiB
18 Elfogadva 347ms 9268 KiB
19 Elfogadva 312ms 9268 KiB
20 Elfogadva 479ms 8872 KiB
21 Elfogadva 458ms 9544 KiB