167182025-05-10 16:01:35TaxiradioLámpákcpp17Elfogadva 100/100126ms1460 KiB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;

int main() {
	int n , k , q; cin >> n >> k >> q;
    vector<int> a(1 , 0);
    for(int i = 1; i < n; i++){
        int y; cin >> y;
        a.push_back(a[y-1]+1);
    }
    vector<int> b(1 , 0);
    for(int i = 1; i < n; i++){
        int u = b.back() , c = k+i-1;
        while(c%2==0){
            c/=2;
            u++;
        }
        c = i;
        while(c%2==0){
            c/=2;
            u--;
        }
        b.push_back(u);
    }
    while(q--){
        int ans = 0;
        for(int i = 0; i < n; i++){
            int y; cin >> y;
            if(y && b[a[i]]==0)ans++;
        }
        cout << ans%2 << "\n";
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Elfogadva1ms316 KiB
subtask215/15
3Elfogadva3ms316 KiB
4Elfogadva39ms316 KiB
5Elfogadva111ms1460 KiB
subtask310/10
6Elfogadva1ms508 KiB
7Elfogadva1ms316 KiB
8Elfogadva1ms496 KiB
9Elfogadva1ms316 KiB
10Elfogadva1ms316 KiB
subtask430/30
11Elfogadva43ms412 KiB
12Elfogadva43ms508 KiB
13Elfogadva43ms412 KiB
14Elfogadva43ms404 KiB
15Elfogadva43ms408 KiB
16Elfogadva43ms500 KiB
17Elfogadva43ms508 KiB
subtask545/45
18Elfogadva98ms756 KiB
19Elfogadva100ms748 KiB
20Elfogadva100ms636 KiB
21Elfogadva101ms488 KiB
22Elfogadva100ms736 KiB
23Elfogadva125ms1436 KiB
24Elfogadva126ms1452 KiB
25Elfogadva126ms1456 KiB
26Elfogadva126ms1452 KiB
27Elfogadva126ms1456 KiB
28Elfogadva90ms316 KiB
29Elfogadva92ms316 KiB