Logo
(追記) (追記ここまで)

25491번 - Mexor tree

시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 1024 MB244755325.728%

문제

$N$개의 정점을 가진 트리가 주어진다. 정점 $i$는 정점값 $a_i$를 가진다.

다음과 같은 쿼리가 총 $M$개 주어진다.

  • $x,円y,円z,円:$ 정점 $x$와 $y$를 잇는 단순 경로 상의 정점들의 값들을 각각 $z$와 XOR 연산을 시행한 값으로 바꾼다.

$M$개의 쿼리를 시행하고 난 후 새로운 수열 $b_i$를 다음과 같이 정의하자.

  • $b_i = $ 정점 $S$와 정점 $i$를 잇는 단순 경로 상의 정점들의 값들 중에 존재하지 않는 음이 아닌 정수 중 최솟값. $(1 \leq i \leq N)$

모든 $b_i$들을 구해보자.

입력

첫째 줄에 정수 $N$과 $S$가 공백으로 구분되어 주어진다. $(1 \leq N \leq 300,000,1円\leq S \leq N)$

둘째 줄에 정점들의 값인 정수로 이루어진 수열 $a_1, a_2, \cdots, a_N$이 공백으로 구분되어 주어진다. $(0\leq a_i \leq N)$

셋째 줄부터 $N-1$개의 줄에 걸쳐 트리의 간선을 나타내는 두 정수 $u,v$가 공백으로 구분되어 주어진다. 이는 정점 $u$와 정점 $v$를 잇는 간선을 의미한다. $(1\leq u,v\leq N)$

$N+2$번째 줄에 쿼리의 개수를 나타내는 정수 $M$이 주어진다. $(1\leq M \leq 300,000円)$

$N+3$번째 줄부터 $M$개의 줄에 걸쳐 쿼리를 나타내는 세 정수 $x,y,z$가 공백으로 구분되어 주어진다. $(1\leq x,y,z\leq N)$

출력

첫째 줄에 수열 $b_1,b_2,\cdots,b_N$을 공백으로 구분하여 출력한다.

제한

예제 입력 1

3 1
0 3 2
1 2
1 3
2
1 2 2
1 3 2

예제 출력 1

1 2 1

힌트

출처

Camp > ICPC Sinchon Algorithm Camp > 2022 ICPC Sinchon Summer Algorithm Camp Contest > 중급 E번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /