만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

점령

면접 대비

시간 제한3초메모리 제한1024 MB

요약
시작 노드 r에서 출발해 현재 체력이 A_i 이상인 인접 노드를 점령하고 B_i를 얻습니다. 더 이상 점령할 수 없을 때의 최종 체력을 구합니다.
난이도

보통10점 중 4점

유형
그리디, 힙, 그래프
정답자
아직 제출이 없습니다

문제

양방향 그래프와 시작 노드 rr이 주어진다. 그래프의 노드는 1,2,…,N1,2,\dots,N의 번호가 붙어 있다. ii번 노드를 점령하려면 AiA_i 이상의 기력을 보유하고 있어야 하며, ii번 노드의 이웃 노드를 하나 이상 점령하고 있어야 한다. ii번 노드를 점령하면 보유한 기력이 BiB_i만큼 증가한다. 점령할 때 보유한 기력이 AiA_i만큼 줄어들지는 않는다. 얻을 수 있는 최대 기력이 얼마인지 구하여라. 시작 노드는 이미 점령된 상태이므로, 시작 상태에서 보유한 기력은 BrB_r이다.

입력

첫 번째 줄에 노드의 개수 NN, 간선의 개수 MM, 시작 노드 rr이 공백으로 구분되어 주어진다. (1≤N≤500 0001 \le N \le 500\,000; 0≤M≤1 000 0000 \le M \le 1\,000\,000; 1≤r≤N1 \le r \le N)

두 번째 줄에 각 노드를 점령하는 데 필요한 기력 A1,A2,…,ANA_1, A_2, \dots, A_N이 공백을 사이에 두고 주어진다. (0≤Ai≤1090 \le A_i \le 10^9; Ar=0A_r=0)

세 번째 줄에 각 노드를 점령했을 때 얻을 수 있는 기력 B1,B2,…,BNB_1, B_2, \dots, B_N이 공백을 사이에 두고 주어진다. (0≤Bi≤1090 \le B_i \le 10^9)

네 번째 줄부터 MM개의 줄에 걸쳐 간선 정보가 주어진다. 각 줄에는 두 정수 uu, vv가 공백으로 구분되어 주어지며, 이는 uu번 노드와 vv번 노드가 이웃임을 뜻한다. (1≤u,v≤N1 \le u, v \le N; u≠vu \ne v)

출력

얻을 수 있는 최대 기력을 출력한다.

예제1

  1. 예제 1

    입력
    3 2 2
    10 0 3
    100 3 4
    1 2
    2 3
    
    예상 출력
    7