153812025-02-19 10:15:35feheristvanSzínes szobák (50 pont)cpp17Hibás válasz 0/5054ms4888 KiB
#include <iostream>
#include <vector>
#include <unordered_map>
using namespace std;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    
    int N, K, M;
    cin >> N >> K >> M;
    
    vector<int> rooms(N + 1); // szobák színei
    unordered_map<int, vector<int>> color_positions; // színek pozíciói
    
    for (int i = 1; i <= N; i++) {
        cin >> rooms[i];
        color_positions[rooms[i]].push_back(i);
    }
    
    vector<bool> occupied(N + 2, true); // szobák foglaltsága
    int escaped = 0;
    
    while (M--) {
        int c, x;
        cin >> c >> x;
        if (color_positions.find(c) == color_positions.end()) continue;
        
        vector<int> new_positions;
        for (int pos : color_positions[c]) {
            int new_pos = pos + x;
            if (new_pos < 1 || new_pos > N || !occupied[new_pos]) {
                escaped++;
            } else {
                new_positions.push_back(new_pos);
            }
            occupied[pos] = false;
        }
        
        for (int pos : new_positions) {
            occupied[pos] = true;
        }
        color_positions[c] = new_positions;
    }
    
    cout << escaped << '\n';
    return 0;
}

RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/50
1Hibás válasz0/01ms508 KiB
2Hibás válasz0/052ms2612 KiB
3Hibás válasz0/11ms316 KiB
4Hibás válasz0/11ms500 KiB
5Hibás válasz0/11ms316 KiB
6Hibás válasz0/11ms316 KiB
7Hibás válasz0/11ms316 KiB
8Hibás válasz0/12ms316 KiB
9Hibás válasz0/11ms316 KiB
10Hibás válasz0/12ms368 KiB
11Hibás válasz0/12ms316 KiB
12Hibás válasz0/12ms508 KiB
13Hibás válasz0/14ms564 KiB
14Hibás válasz0/13ms564 KiB
15Hibás válasz0/14ms820 KiB
16Hibás válasz0/14ms820 KiB
17Hibás válasz0/16ms724 KiB
18Hibás válasz0/14ms820 KiB
19Hibás válasz0/134ms2340 KiB
20Hibás válasz0/148ms2544 KiB
21Hibás válasz0/139ms2356 KiB
22Hibás válasz0/141ms2320 KiB
23Hibás válasz0/146ms2356 KiB
24Hibás válasz0/148ms2448 KiB
25Hibás válasz0/148ms2536 KiB
26Hibás válasz0/146ms2544 KiB
27Hibás válasz0/352ms4888 KiB
28Hibás válasz0/354ms4792 KiB
29Hibás válasz0/352ms4880 KiB
30Hibás válasz0/354ms4788 KiB
31Hibás válasz0/354ms4620 KiB
32Hibás válasz0/352ms4876 KiB
33Hibás válasz0/425ms2612 KiB
34Hibás válasz0/437ms2356 KiB