44222023-03-27 19:03:24balaaaazsElőzésekcpp14Hibás válasz 0/100497ms6492 KiB
#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main() {
    int n, q;
    cin >> n >> q;

    vector<int> cars(n);
    for (int i = 0; i < n; i++) {
        cin >> cars[i];
    }

    vector<int> count(n + 1, 0);
    int mostElőzöttAutó = cars[0];
    count[cars[0]] = 0;

    for (int i = 1; i <= q; i++) {
        int előzőAutó, utoljáraElőzöttAutó;
        cin >> előzőAutó;
        utoljáraElőzöttAutó = cars[előzőAutó-1];

        count[utoljáraElőzöttAutó]++;
        if (count[utoljáraElőzöttAutó] > count[mostElőzöttAutó] || (count[utoljáraElőzöttAutó] == count[mostElőzöttAutó] && utoljáraElőzöttAutó < mostElőzöttAutó)) {
            mostElőzöttAutó = utoljáraElőzöttAutó;
        }

        cout << mostElőzöttAutó << endl;
    }

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Hibás válasz3ms1812 KiB
subtask20/30
2Hibás válasz3ms2000 KiB
3Hibás válasz3ms2084 KiB
4Hibás válasz4ms2220 KiB
5Hibás válasz4ms2312 KiB
6Hibás válasz6ms2456 KiB
7Hibás válasz6ms2548 KiB
subtask30/70
8Hibás válasz252ms3256 KiB
9Hibás válasz344ms3668 KiB
10Hibás válasz298ms4264 KiB
11Hibás válasz172ms4792 KiB
12Hibás válasz354ms4940 KiB
13Hibás válasz277ms5380 KiB
14Hibás válasz277ms6004 KiB
15Hibás válasz442ms6168 KiB
16Hibás válasz497ms6492 KiB
17Hibás válasz351ms6464 KiB
18Hibás válasz347ms6460 KiB
19Hibás válasz202ms6416 KiB
20Hibás válasz328ms6228 KiB
21Hibás válasz319ms6240 KiB