931D - Peculiar apple-tree - CodeForces Solution


dfs and similar graphs trees *1500

Please click on ads to support us..

C++ Code:

#include <fstream>
#include <vector>
#include <algorithm>
#include <stack>
#include <string>
#include <iostream>
using namespace std;
#define ll long long

const ll INF = 1e18;
vector<vector<int>> g;
vector<int> cnt;

void dfs(int v = 0, int h = 0) {
    if (cnt.size() <= h)
        cnt.push_back(1);
    else
        cnt[h]++;
    for (int u: g[v])
        dfs(u, h + 1);
}

int main() {
    int n; cin >> n;
    g.resize(n);
    for (int i = 0; i < n - 1; i++) {
        int x; cin >> x;
        g[x - 1].push_back(i + 1);
    }
    dfs();
    int ans = 0;
    for (int i: cnt) {
        ans += i % 2;
    }
    cout << ans << "\n";
    return 0;
}


Comments

Submit
0 Comments
More Questions

1555B - Two Tables
1686A - Everything Everywhere All But One
1469B - Red and Blue
1257B - Magic Stick
18C - Stripe
1203B - Equal Rectangles
1536A - Omkar and Bad Story
1509A - Average Height
1506C - Double-ended Strings
340A - The Wall
377A - Maze
500A - New Year Transportation
908D - New Year and Arbitrary Arrangement
199A - Hexadecimal's theorem
519C - A and B and Team Training
631A - Interview
961B - Lecture Sleep
522A - Reposts
1166D - Cute Sequences
1176A - Divide it
1527A - And Then There Were K
1618E - Singers' Tour
1560B - Who's Opposite
182B - Vasya's Calendar
934A - A Compatible Pair
1618F - Reverse
1684C - Column Swapping
57C - Array
1713D - Tournament Countdown
33A - What is for dinner