봉우리

아직 제출이 없습니다시간 제한2초메모리 제한128 MB

문제

바이트아사르는 바이트산맥 국립공원 방문자 센터에서 일한다. 바이트산맥에는 봉우리가 nn개 있고, 일부 봉우리 쌍은 서로 다른 난이도의 등산로로 이어져 있다.

관광객들은 바이트아사르에게 늘 비슷한 질문을 한다. 어떤 봉우리에서 출발해 정해진 난이도 이하의 등산로만 이용해 이동할 수 있을 때, 도달할 수 있는 봉우리 중 kk번째로 높은 봉우리의 높이는 얼마인가?

각 난이도가 주어진 한계 이하인 등산로들을 차례로 지나 걸어서 갈 수 있으면, 그 봉우리는 출발 봉우리에서 도달 가능하다고 한다. 출발한 봉우리 자신도 항상 도달 가능한 것으로 본다. 모든 질문에 답할 수 있도록 바이트아사르를 도와주자.

입력

첫째 줄에 세 정수 nn, mm, qq (1n1000001 \le n \le 100000, 1m,q5000001 \le m, q \le 500000)가 주어진다. 각각 봉우리의 수, 등산로의 수, 질문의 수이다. 봉우리는 11번부터 nn번까지 번호가 매겨져 있다.

둘째 줄에 nn개의 정수 h1,h2,,hnh_1, h_2, \dots, h_n (1hi1091 \le h_i \le 10^9)이 주어지며, 각 봉우리의 높이를 나타낸다.

이어지는 mm개의 줄에는 각각 세 정수 aa, bb, cc (1a,bn1 \le a, b \le n, aba \ne b, 1c1091 \le c \le 10^9)가 주어진다. 이는 봉우리 aabb를 잇는 양방향 등산로이며 난이도가 cc임을 뜻한다. cc가 클수록 더 어려운 등산로이다. 두 봉우리 사이에 등산로가 여러 개 있을 수도 있다.

이어지는 qq개의 줄에는 각각 세 정수 vv, xx, kk (1vn1 \le v \le n, 1x1091 \le x \le 10^9, 1kn1 \le k \le n)가 주어진다. 봉우리 vv에서 출발하여 난이도가 xx 이하인 등산로만 이용할 때, 도달할 수 있는 봉우리 중 kk번째로 높은 봉우리의 높이를 구하라.

출력

qq개의 줄을 출력한다. ii번째 줄에는 ii번째 질문의 답, 즉 해당 조건에서 도달할 수 있는 봉우리 중 kk번째로 높은 봉우리의 높이를 출력한다. 도달할 수 있는 봉우리가 kk개보다 적으면 대신 1-1을 출력한다.