#P11225. [COTS 2019] 疏散 Sklonište

    ID: 10709 Type: RemoteJudge 4000ms 500MiB Tried: 0 Accepted: 0 Difficulty: 6 Uploaded By: Tags>2019状态压缩二分图最大流COCI(克罗地亚)

[COTS 2019] 疏散 Sklonište

题目背景

译自 Izborne Pripreme 2019 (Croatian IOI/CEOI Team Selection) D2T2。4s,0.5G\texttt{4s,0.5G}

题目描述

给定 NN 个点 MM 条边的无向连通图,边有边权。有 KK 个关键点 A1,A2,,AKA_1,A_2,\cdots,A_K容量S1,S2,,SKS_1,S_2,\cdots,S_K

图中的居民要疏散。也就是说,你需要构造一个序列 B1,B2,,BNB_1,B_2,\cdots,B_N,使得:

  • 1iN\forall 1\le i\le N1BiK1\le B_i\le K
  • 对于 1iK1\le i\le K,定义 $\displaystyle \mathrm{cnt}_i=\sum_{1\le j\le N} [B_j=i]$,也就是 iiBB 序列中出现的次数。则 cntiSi\mathrm{cnt}_i\le S_i

定义序列 BB疏散时间为 $\displaystyle \max_{1\le i\le N} \operatorname{dist}(i,A_{B_i})$,其中 dist(u,v)\operatorname{dist}(u,v) 指图中 u,vu,v 间最短路的长度。

求出疏散时间的最小值。保证 iSiN\sum_i S_i\ge N

输入格式

第一行,三个正整数 N,M,KN,M,K

接下来 MM 行,每行三个正整数 u,v,wu,v,w,描述一条无向边 (u,v)(u,v),边权为 ww。保证 uvu\neq v

接下来 KK 行,每行两个正整数描述 Ai,SiA_i,S_i

保证 iSiN\sum_i S_i\ge N

输出格式

输出一行一个数,表示答案。

5 5 2
1 2 1
1 3 3
2 3 4
3 4 1
4 5 1
1 10
4 2
3
7 8 3
1 2 5
2 3 3
3 4 5
1 4 1
4 5 7
5 6 2
6 7 1
4 7 4
3 3
7 3
6 2
5

提示

对于 100%100\% 的数据,保证:

  • 1N1051\le N\le 10^5
  • N1M3×105N-1\le M\le 3\times 10^5
  • 1K171\le K\le 17
  • 给定图连通,无自环;
  • 1w,Si1091\le w,S_i\le 10^9
  • 1u,v,AiN1\le u,v,A_i\le N
  • SiS_i 两两不同;
  • iSiN\sum_i S_i\ge N
子任务编号 NN\le MM\le KK\le 得分
1 1 100 100 500 500 55 3030
2 2 105 10^5 3×105 3\times 10^5 1010
3 3 1717 4040