Module: 분리 집합 시스템


Problem

3 /9


사과

Problem

<사업부> Dasha는 n명의 친구가 있고, 각각 i 사과를 가지고 있습니다. 모든 친구는 겹치지 않는 회사를 형성합니다. 언제든지 두 회사가 합병할 수 있습니다. Dasha는 친구들의 모든 행동을 신중하게 기억했습니다. 이제 그녀는 새로 형성된 각 회사에 몇 개의 사과가 있었는지 알고 싶어합니다. 처음에는 모든 친구들이 따로 어울립니다. 한 사람 이상이 있는 회사는 없습니다. Dasha는 사과가 없으며 협회에 참여하지 않습니다.
<사업부>
입력:
<사업부> 첫 번째 줄에는 정수 n과 k( 2 <= n <= 300000, 0 <= k <= n - 1 ) - Dasha의 친구 수와 이벤트 수를 포함합니다. 두 번째 줄에는 n개의 숫자가 포함됩니다. ai(0 <= ai <= 10^9) - Dasha의 i번째 친구가 가지고 있는 사과의 수입니다. 다음 k 줄에는 두 개의 숫자 u, v(1 <= u, v <= n)가 포함됩니다. 이벤트 (u, v)는 Dasha의 u번째 친구가 있는 회사가 v번째 친구와 함께 회사에 가입했음을 의미합니다. 
<사업부>
출력:
<사업부> k 쿼리 각각에 대해 새 회사의 사과 수를 인쇄합니다.
<사업부>
<몸>
(c) 이브라힘 아마드, 2018
엔터 출력
<사업부> 3 2 <사업부> 1 2 3 <사업부> 1 2 <사업부> 1 3 <사업부> 3 <사업부> 6
<사업부> 2 1 <사업부> 999999999 0 <사업부> 1 2 999999999