QOJ.ac

QOJ

Time Limit: 1.5 s Memory Limit: 1024 MB Total points: 100

#8950. Struktury drzewiaste

统计

Dana jest drzewo o $n$ wierzchołkach, spełniające następujące właściwości:

  1. Wszystkie liście znajdują się na tej samej głębokości.
  2. Wierzchołki są ponumerowane zgodnie z kolejnością BFS, zgodnie z następującą konstrukcją:
    1. Korzeń ma numer 1 i jest dodawany do kolejki.
    2. W każdym kroku pobieramy wierzchołek z początku kolejki, a jego dzieciom przypisujemy kolejne nieużyte numery i dodajemy je do kolejki w kolejności przypisywania numerów.

Każdy wierzchołek ma przypisaną wagę, początkowo równą 0.

Dostępne są dwa rodzaje operacji:

  • Operacja 1: Dodaj $y$ do wagi każdego wierzchołka w poddrzewie wierzchołka $x$.
  • Operacja 2: Wykonaj rotację wag wierzchołków, przenosząc wagę wierzchołka $i$ do wierzchołka $(i \bmod n) + 1$.

Oblicz wagi wszystkich wierzchołków po $q$ operacjach. Aby uniknąć zbyt dużego wyjścia, wypisz sumę XOR wag wszystkich wierzchołków.

Wejście

W pierwszej linii znajdują się dwie liczby $n$ oraz $q$, oznaczające odpowiednio liczbę wierzchołków w drzewie oraz liczbę operacji.

W kolejnej linii znajduje się $n-1$ liczb, gdzie $i$-ta liczba $fa[i+1]$ oznacza ojca wierzchołka $i+1$ (zgodnie z właściwościami BFS, dla $i \leq j$ zachodzi $fa[i] \leq fa[j]$).

Następnie podano $q$ linii opisujących operacje. Jeśli linia zaczyna się od 1 x y, oznacza to operację typu 1: dodanie $y$ do wierzchołków w poddrzewie $x$. Jeśli linia zaczyna się od 2, oznacza to operację typu 2: wykonanie rotacji.

Wyjście

Wypisz jedną liczbę, będącą sumą XOR wag wszystkich wierzchołków.

Przykład

Wejście 1

6 10
1 1 2 3 3
1 3 1
1 2 2
2
1 4 3
1 5 4
2
2
1 1 5
2
1 6 6

Wyjście 1

10

Uwagi

Rzeczywiste wagi wynoszą:

9 11 6 6 5 13

Suma XOR wynosi 10.

Ograniczenia

Dla 100% danych: $n, Q \leq 100\,000$, $y \leq 10\,000$.

Podzadanie $n, Q \leq$ Właściwości specjalne Punkty
1 $1\,000$ $ $ 21
2 $100\,000$ Tylko operacja 1 8
3 $fa[i+1]=i$ 8
4 Drzewo jest pełnym drzewem binarnym, $n=2^k-1$ 13
5 Liczba liści $\leq 20$ 13
6 $50\,000$ $ $ 21
7 $100\,000$ 16

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
EditorialOpen Official EditorialQingyu- Download

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.