問題
HOJ国はN個の都市と、都市間をつなぐM個の道路、S個の会社から成ります。
都市には、1,2,...Nと番号が振られており、各都市には市民がちょうど1人います。
会社には、1,2,...Sと番号が振られており、会社i(1≤i≤S)は都市Aiにあり、給料はBiです。
i個目の道路(1≤i≤M)は、都市Uiと都市Viをつないでおり、双方向に移動が出来ます。
都市iに住んでいる市民は、都市iと都市Ajがいくつかの道路を経由して行き来可能な時、会社jで働くことが出来ます。
この時、この市民の幸福度は、都市iから都市Ajへ行く時に通る道路の数の最小値をdist(i,Aj)として、
・MAX(0,Bj−dist(i,Aj))
になります。
各市民が働く会社を自由に1つ決めることが出来る時、HOJ国の市民の幸福度の総和の最大値を求めてください。
入力
入力は以下の形式で標準入力から与えられる。
N M S A1 B1 A2 B2 ... AS BS U1 V1 U2 V2 ... UM VM
1行目に整数Xが与えられる。 2行目に整数Yが与えられる。
出力
出力の最後に改行を入れること。
制約
全ての入出力ケースについて以下を満たす。
- 1≤N,S≤2×105
- 0≤M≤2×105
- 1≤Ai≤N(1≤i≤N)
- 1≤Bi≤109(1≤i≤N)
- 1≤Ui,Vi≤N(1≤i≤N)
- Ui≠Vi(1≤i≤N)
- 入力はすべて整数
入出力例
入力例1
5 4 2 1 2 5 3 1 2 2 3 3 4 4 5
出力例1
9
図は入力例1を簡易的に表したものです。
今回の場合、都市1,2の市民は会社1、都市3,4,5の市民は会社2で働くことで、各市民の幸福度は2,1,1,2,3となり、総和は9です。
総和を10以上にすることはできないので、9を出力してください。
入力例2
9 7 4 9 100 8 5 6 1 1 3 1 2 2 3 3 4 4 5 5 2 7 6 8 7
出力例2
119
任意の都市間を必ず移動できるとは限らないことに注意してください。答えがint型に収まるとは限りません。