만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

트리 위의 "차파예프"

시간 제한2초메모리 제한1024 MB

요약
각 정점을 Root로 골랐을 때 Root의 자손마다 체커를 놓고 Marina가 먼저 두는 게임에서 Marina가 이기는 경우의 수를 구합니다.
난이도

어려움10점 중 8점

유형
트리, 게임 이론, DFS, 동적 계획법
정답자
아직 제출이 없습니다

문제

Vova와 Marina는 게임을 즐기고, 특히 게임에 자기들만의 규칙을 만드는 것을 좋아한다. 최근 그들은 "차파예프"라는 재미있는 게임을 알게 되었다. 이 게임에서는 플레이어가 상대 색 말을 손가락으로 튕겨 체스판에서 떨어뜨린다. 이 게임은 "호두까기"라고도 불린다. 충분히 즐긴 뒤, 그들은 규칙에 수학적 복잡도를 더하기로 했다.

이제 그들은 체스판이 아니라 나무 모양의 판에서 게임을 한다. 나무는 NN개의 정점으로 이루어져 있다. 정점 1이 뿌리이고, 1을 제외한 각 정점에서는 번호가 더 작은 부모 정점으로 간선이 하나씩 이어진다.

게임에는 같은 색의 말이 쓰인다. 처음에 말들은 나무의 일부 정점에 놓여 있다. 한 턴에 플레이어는 말 하나를 골라 간선을 따라 뿌리 쪽으로 튕겨 보낸다. 이때 경로 위에서 만나는 말은 모두 판에서 떨어진다. 튕긴 말도 뿌리에 도착하면 판에서 떨어진다.

플레이어는 번갈아 턴을 진행한다. 자기 턴이 왔을 때 판에 말이 하나도 없으면 그 플레이어가 진다.

같은 판에서 서로 다른 초기 배치로 게임을 할 수도 있다. 아이들이 가장 흥미로운 판을 얻는 방법은 어떤 정점 RootRoot의 모든 후손(직접 또는 간접 후손)에 말을 하나씩 놓는 것이다. 이때 RootRoot 자체에는 말을 놓지 않는다.

아이들은 RootRoot로 각 정점을 한 번씩 골라 NN번 게임을 하기로 했다. 현재 RootRoot에 후손이 없고 판에 처음부터 말이 없다면 게임은 열리지 않고, 아이들은 다음 배치로 넘어간다. 모든 게임에서 Marina가 먼저 둔다.

Vova는 두 플레이어가 최선을 다할 때 Marina가 이길 수 있는 게임이 몇 번인지 묻는다.

입력

첫 줄에 정점의 개수 NN (1≤N≤500 0001 \le N \le 500\,000)이 주어진다.

둘째 줄에는 공백으로 구분된 정수 p2,p3,…,pNp_2, p_3, \ldots, p_N이 주어진다. 여기서 pip_i는 정점 ii의 부모 정점 번호이다 (1≤pi<i1 \le p_i < i).

출력

Marina가 이기는 게임의 수를 정수 하나로 출력한다.

힌트

문제에 나온 시험 데이터를 보자. 판은 아래 그림과 같다. 아이들은 RootRoot를 정점 1, 2, 3, 5로 골라 네 번의 게임을 한다. 나머지 세 정점을 RootRoot로 고르면 판에 처음부터 말이 없으므로 게임은 열리지 않는다.

RootRoot를 정점 5로 고르면 말은 정점 6과 7에 놓인다. 이 게임에서 Marina는 진다. 그녀가 둘 중 어느 말을 떨어뜨리든, Vova가 남은 말을 떨어뜨려 게임을 끝낸다.

RootRoot를 정점 2 또는 3으로 고르면, Marina는 정점 4의 말을 튕겨 한 수 만에 이길 수 있다. Root=2Root = 2인 경우 그 말은 경로 위의 정점 3에 있던 말도 함께 떨어뜨린다.

RootRoot를 정점 1로 골라도 Marina에게는 이기는 전략이 있다. 첫 수로 정점 2의 말을 떨어뜨려야 한다. 이 초기 배치에서 진행된 게임의 예는 아래 그림과 같다.

따라서 Marina는 세 번의 게임에서 이긴다.

예제1

  1. 예제 1

    입력
    7
    1 2 3 1 5 5
    
    예상 출력
    3