44192023-03-27 18:57:41balaaaazsElőzésekcpp14Hibás válasz 0/1003.072s10540 KiB
#include <iostream>
#include <vector>
#include <unordered_map>

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];
    }
    
    unordered_map<int, int> overtakes;
    int max_overtakes = 0, most_overtaken = -1;
    
    for (int i = 0; i < q; i++) {
        int overtaken_car;
        cin >> overtaken_car;
        
        int overtaking_car = cars[overtaken_car-2];
        
        overtakes[overtaking_car]++;
        if (overtakes[overtaking_car] > max_overtakes || 
            (overtakes[overtaking_car] == max_overtakes && overtaking_car < most_overtaken)) {
            max_overtakes = overtakes[overtaking_car];
            most_overtaken = overtaking_car;
        }
        
        cars.erase(cars.begin() + overtaken_car - 1);
        cars.insert(cars.begin() + overtaken_car - 2, overtaking_car);
        
        cout << most_overtaken << endl;
    }
    
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Hibás válasz3ms1684 KiB
subtask20/30
2Hibás válasz3ms1932 KiB
3Hibás válasz3ms2056 KiB
4Hibás válasz4ms2168 KiB
5Hibás válasz4ms2312 KiB
6Hibás válasz6ms2668 KiB
7Hibás válasz8ms2624 KiB
subtask30/70
8Hibás válasz533ms4172 KiB
9Hibás válasz1.328s6236 KiB
10Hibás válasz1.843s6948 KiB
11Hibás válasz1.481s8872 KiB
12Hibás válasz2.039s9272 KiB
13Időlimit túllépés3.026s10036 KiB
14Időlimit túllépés3.055s6536 KiB
15Időlimit túllépés3.072s6468 KiB
16Időlimit túllépés3.061s6648 KiB
17Időlimit túllépés3.069s6788 KiB
18Időlimit túllépés3.069s6748 KiB
19Hibás válasz2.447s10540 KiB
20Időlimit túllépés3.033s6880 KiB
21Időlimit túllépés3.071s7024 KiB