比赛场次 | 571 |
---|---|
比赛名称 | 4043级2023省选模拟赛3 |
比赛状态 | 已结束比赛成绩 |
开始时间 | 2023-03-24 18:40:00 |
结束时间 | 2023-03-24 22:30:00 |
开放分组 | 全部用户 |
注释介绍 | 发散思维,莫着急 |
题目名称 | 接水果 |
---|---|
输入输出 | fruit_hnoi2015.in/out |
时间限制 | 6000 ms (6 s) |
内存限制 | 512 MiB |
测试点数 | 10 简单对比 |
用户 | 结果 | 时间 | 内存 | 得分 |
---|
风见幽香非常喜欢玩一个叫做 osu! 的游戏,其中她最喜欢玩的模式就是接水果。由于她已经 DT FC 了 The\ big\ black,她觉得这个游戏太简单了,于是发明了一个更加难的版本。
首先有一个地图,是一棵由 n 个顶点,n-1 条边组成的树。
这颗树上有 p 个盘子,每个盘子实际上是一条路径,并且每个盘子还有一个权值。第 i 个盘子就是顶点 a_i 到顶点 b_i 的路径(由于是树,所以从 a_i 到 b_i 的路径是唯一的),权值为 c_i。
接下来依次会有 q 个水果掉下来,每个水果本质上也是一条路径,第 i 个水果是从顶点 u_i 到顶点 v_i 的路径。
幽香每次需要选择一个盘子去接当前的水果:一个盘子能接住一个水果,当且仅当盘子的路径是水果的路径的子路径。这里规定:从 a 到 b 的路径与从 b 到 a 的路径是同一条路径。
当然为了提高难度,对于第 i 个水果,你需要选择能接住它的所有盘子中,权值第 k_i 小的那个盘子,每个盘子可重复使用(没有使用次数的上限:一个盘子接完一个水果后,后面还可继续接其他水果,只要它是水果路径的子路径)。幽香认为这个游戏很难,你能轻松解决给她看吗?
第一行三个数 n 和 p 和 q,表示树的大小和盘子的个数和水果的个数。
接下来 n-1 行,每行两个数 a,b,表示树上的 a 和 b 之间有一条边。树中顶点按 1 到 n 标号。
接下来 p 行,每行三个数 a,b,c,表示路径为 a 到 b、权值为 c 的盘子,其中 a \neq b。
接下来 q 行,每行三个数 u,v,k,表示路径为 u 到 v 的水果,其中 u \neq v,你需要选择第 k 小的盘子,第 k 小一定存在。
对于每个果子,输出一行表示选择的盘子的权值。
10 10 10 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 3 2 217394434 10 7 13022269 6 7 283254485 6 8 333042360 4 6 442139372 8 3 225045590 10 4 922205209 10 8 808296330 9 2 486331361 4 9 551176338 1 8 5 3 8 3 3 8 4 1 8 3 4 8 1 2 3 1 2 3 1 2 3 1 2 4 1 1 4 1
442139372 333042360 442139372 283254485 283254485 217394434 217394434 217394434 217394434 217394434
对于 20\% 的数据,1\leq n,p,q \leq 3\times 10^3;
对于另 30\% 的数据,1\leq n,p,q \leq 4\times 10^4,树是一条链;
对于 100\% 的数据,1\leq n,p,q \leq 4\times 10^4,0 \le c \le 10^9。