8913 2024. 02. 04 14:05:47 bovizdb Színes szobák (50 pont) cpp17 Időlimit túllépés 11/50 400ms 8632 KiB
#include <bits/stdc++.h>
 
using namespace std;
 
#define ll long long
#define endl "\n"
#define pll pair<ll, ll>
#define fs first
#define sc second
#define vll vector<ll>
#define v2d vector<vector<ll>>
#define vpll vector<pll>
#define qll queue<ll>
#define stll stack<ll>
#define sll set<ll>
#define mll map<ll, ll>

ll n, k, m;
vll v, v2;
v2d vk;
ll ans;

void solve()
{
    cin >> n >> k >> m;
    v.resize(n, 1);
    vk.resize(k);
    for (ll i = 0; i < n; i++)
    {
        ll in;
        cin >> in;
        vk[in-1].push_back(i);
    }
    for (ll i = 0; i < m; i++)
    {
        ll c, x;
        cin >> c >> x;
        c--;
        v2 = v;
        for (ll j = 0; j < vk[c].size(); j++)
        {
            if (vk[c][j]+x >= n)
            {
               ans += v[n-1];
               v2[n-1] = 0;
            }
            else if (vk[c][j]+x < 0)
            {
                ans += v[0];
                v2[0] = 0;
            }
            else
            {
                v2[vk[c][j]+x] += v[vk[c][j]];
                v2[vk[c][j]] = v2[vk[c][j]]-v[vk[c][j]];
            }
        }
        v = v2;
    }
    cout << ans;
}
 
signed main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);
    ll t = 1;
    //cin >> t;
    while(t--)
    {
        solve();
    }
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 11/50
1 Elfogadva 0/0 3ms 1928 KiB
2 Időlimit túllépés 0/0 400ms 6756 KiB
3 Hibás válasz 0/1 4ms 2540 KiB
4 Elfogadva 1/1 4ms 2436 KiB
5 Hibás válasz 0/1 4ms 2436 KiB
6 Elfogadva 1/1 4ms 2740 KiB
7 Elfogadva 1/1 4ms 2692 KiB
8 Elfogadva 1/1 4ms 3096 KiB
9 Elfogadva 1/1 4ms 3112 KiB
10 Elfogadva 1/1 9ms 3380 KiB
11 Elfogadva 1/1 4ms 3264 KiB
12 Elfogadva 1/1 9ms 3584 KiB
13 Hibás válasz 0/1 100ms 3916 KiB
14 Hibás válasz 0/1 35ms 4112 KiB
15 Hibás válasz 0/1 43ms 4216 KiB
16 Elfogadva 1/1 163ms 4212 KiB
17 Elfogadva 1/1 203ms 4500 KiB
18 Elfogadva 1/1 202ms 4736 KiB
19 Időlimit túllépés 0/1 379ms 6236 KiB
20 Időlimit túllépés 0/1 368ms 6348 KiB
21 Időlimit túllépés 0/1 368ms 6528 KiB
22 Időlimit túllépés 0/1 365ms 6404 KiB
23 Időlimit túllépés 0/1 377ms 6408 KiB
24 Időlimit túllépés 0/1 333ms 6408 KiB
25 Időlimit túllépés 0/1 354ms 6408 KiB
26 Időlimit túllépés 0/1 372ms 6332 KiB
27 Időlimit túllépés 0/3 381ms 8560 KiB
28 Időlimit túllépés 0/3 377ms 8440 KiB
29 Időlimit túllépés 0/3 368ms 8448 KiB
30 Időlimit túllépés 0/3 368ms 8532 KiB
31 Időlimit túllépés 0/3 361ms 8632 KiB
32 Időlimit túllépés 0/3 370ms 8536 KiB
33 Időlimit túllépés 0/4 365ms 5768 KiB
34 Időlimit túllépés 0/4 384ms 5760 KiB