104002024-04-01 19:43:10Valaki2Lámpákcpp17Időlimit túllépés 10/1001.1s4084 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define pb push_back
#define mp make_pair
#define pii pair<int, int>
#define fi first
#define se second

const int maxn = 100;

int n, k, q;
int par[1 + maxn];
int state[1 + maxn];
int subtreexor[1 + maxn];

void solve() {
    cin >> n >> k >> q;
    for(int i = 2; i <= n; i++) {
        cin >> par[i];
    }
    for(int qi = 1; qi <= q; qi++) {
        for(int i = 1; i <= n; i++) {
            cin >> state[i];
        }
        for(int j = 1; j <= k; j++) {
            for(int i = 1; i <= n; i++) {
                subtreexor[i] = 0;
            }
            for(int i = n; i >= 1; i--) {
                int prevxor = subtreexor[i];
                subtreexor[i] ^= state[i];
                state[i] ^= prevxor;
                subtreexor[par[i]] ^= subtreexor[i];
            }
        }
        cout << state[1] << "\n";
    }
}

signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    solve();
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1772 KiB
2Elfogadva3ms1928 KiB
subtask20/15
3Időlimit túllépés1.1s1996 KiB
4Hibás válasz3ms2512 KiB
5Hibás válasz3ms2600 KiB
subtask310/10
6Elfogadva6ms2688 KiB
7Elfogadva7ms2664 KiB
8Elfogadva4ms2884 KiB
9Elfogadva4ms2988 KiB
10Elfogadva3ms3068 KiB
subtask40/30
11Időlimit túllépés1.098s3260 KiB
12Időlimit túllépés1.046s3368 KiB
13Időlimit túllépés1.07s3320 KiB
14Időlimit túllépés1.062s3412 KiB
15Időlimit túllépés1.057s3520 KiB
16Időlimit túllépés1.037s3328 KiB
17Időlimit túllépés1.062s3472 KiB
subtask50/45
18Hibás válasz4ms3604 KiB
19Hibás válasz6ms3816 KiB
20Hibás válasz6ms3916 KiB
21Hibás válasz7ms3988 KiB
22Hibás válasz7ms4076 KiB
23Hibás válasz4ms4076 KiB
24Hibás válasz4ms4084 KiB
25Hibás válasz4ms3992 KiB
26Hibás válasz7ms3984 KiB
27Hibás válasz7ms3984 KiB
28Hibás válasz4ms3988 KiB
29Hibás válasz4ms4076 KiB