98202024-03-08 10:17:10UnluckYElőzésekcpp17Accepted 100/100483ms9544 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;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted3ms1808 KiB
subtask230/30
2Accepted3ms2056 KiB
3Accepted3ms2276 KiB
4Accepted4ms2532 KiB
5Accepted4ms2740 KiB
6Accepted4ms3088 KiB
7Accepted4ms3064 KiB
subtask370/70
8Accepted138ms4332 KiB
9Accepted202ms5300 KiB
10Accepted241ms5904 KiB
11Accepted275ms7028 KiB
12Accepted224ms7312 KiB
13Accepted273ms7808 KiB
14Accepted280ms8568 KiB
15Accepted483ms9304 KiB
16Accepted321ms9268 KiB
17Accepted375ms9264 KiB
18Accepted347ms9268 KiB
19Accepted312ms9268 KiB
20Accepted479ms8872 KiB
21Accepted458ms9544 KiB