정수 0 ~ n - 1 을 담고 있는 크기가 n 인 1차원 정수 배열 a가 있습니다. 배열의 각 원소마다 하나의 집합을 이루고 있습니다.
당신은 여기에 다음 쿼리들을 실행하려고 합니다.
x, y ] 형태의 쿼리가 주어집니다.
y가 포함된 집합의 원소들을 모두 x가 포함된 집합으로 옮깁니다.x 와 y 가 같은 집합에 속해있다면 해당 쿼리는 실행하지 않습니다.x , y ] 형태의 쿼리가 주어집니다.
x 와 y 가 포함된 집합에서 x 와 같거나 늦게 집합으로 들어왔으면서 y 와 같거나 빠르게 집합으로 들어온 원소들을 새로 생성한 집합으로 옮깁니다.x 와 y 는 항상 같은 집합에 포함되어 있습니다.x , y ] 형태의 쿼리가 주어집니다.
x 와 y 가 같은 집합에 속해있다면 "Yes"를, 그렇지 않다면 "No" 를 return 할 배열의 뒤에 추가합니다.a의 길이를 나타내는 정수 n, 쿼리들을 담은 2차원 정수 배열 queries 가 매개변수로 주어집니다. 쿼리들을 순서대로 실행했을 때, 3번 쿼리의 결과를 순서대로 담아 return 하도록 solution 함수를 완성해주세요.n ≤ 500,000queries 의 길이 ≤ 500,000
queries[i] 는 i + 1 번째로 실행할 쿼리를 나타내며, [ q, x, y ] 형태의 1차원 정수 배열입니다.q ≤ 3x, y < nx 와 y 는 항상 같은 집합에 속해 있습니다.| n | queries | result |
|---|---|---|
| 4 | [[3, 2, 3], [1, 3, 2], [3, 2, 3], [1, 2, 0], [3, 0, 1], [2, 2, 0], [3, 2, 3], [3, 0, 2]] | [”No”, “Yes”, “No”, “No”, “Yes”] |
| 7 | [[1, 0, 1], [1, 2, 3], [3, 1, 3], [1, 2, 0], [3, 1, 3], [1, 1, 5], [1, 5, 4], [3, 4, 5], [2, 2, 5], [3, 4, 5]] | [”No”, “Yes”,” “Yes”, “No”] |