빠른 신장 트리
시간 제한5초메모리 제한512 MB
정점 가중치와 조건부 간선 m개가 주어질 때, 두 성분의 무게 합이 s 이상이면 추가되는 간선의 번호를 순서대로 구합니다.
문제
왕슈한은 처음에 간선이 하나도 없는 무방향 그래프를 정점 개로 갖고 있다.
각 정점에는 0 이상의 정수인 가중치가 있다.
또 왕슈한은 튜플 개 를 갖고 있다. 여기서 , 이고, 는 0 이상의 정수이다.
이후 다음 과정을 시작한다.
- 서로 다른 연결 요소에 속하면서 (가 속한 연결 요소의 가중치 합) + (가 속한 연결 요소의 가중치 합) 를 만족하는 가 없으면 과정을 끝낸다.
- 그렇지 않으면 그러한 중 가장 작은 값을 골라 와 사이에 간선을 추가하고, 를 메모장에 적은 뒤, 더 커진 그래프에서 과정을 반복한다.
과정이 끝난 뒤 불행한 일이 생겼다. 누군가 그의 메모장을 훔쳐 갔다! 적혀 있던 숫자들을 효율적으로 모두 복원하도록 도와줄 수 있겠는가?
입력
첫 줄에는 정수 과 이 주어진다. 은 그래프의 정점 수이고, 은 튜플의 개수이다 ().
둘째 줄에는 정점들의 가중치 이 공백으로 구분되어 주어진다 ().
다음 개 줄에는 각각 정수 , , 가 주어진다 (, , ).
출력
첫 줄에는 메모장에 적힌 정수의 개수를 출력한다. 다음 줄에는 적은 순서대로 모든 정수를 공백으로 구분하여 출력한다.