BJ模拟 Pandaria(可持续化并查集)

Description

        Mr. Panda 有 N 个花园,编号从 1 到 N 。对于编号为 i 的花园,花园里只有一朵花,颜色为  ci  。花园与花园之间有道路连接(道路是双向的)。每条道路都有一个花费,表示经过该道路花费的时间

        Mr. Panda 喜欢在他的N个花园中转悠,然后采尽可能多的同种颜色的花。然而,有时候他并不想花太多时间走同一段路。现在问题来了,每一次 Mr. Panda 会告诉你:他从哪个花园开始出发和他能忍受的走同一段路的花费的最大值w(也就是说,只有费用不超过w的道路可以通行)。

       请你判断Mr. Panda最多能采到的花是哪种颜色的花。如果有多种颜色符合条件,选择颜色编号最小的输出。

Input

       第一行包含三个整数  N,M,type  ,分别表示花园数目、道路数目和数据是否加密。

       接下来一行N个整数,第i个整数表示第i个花园中的花的颜色

       接下来M行表示花园中的道路,每行三个整数  x,y,w  ,表示有一条花费为w的道路连接x号花园和y号花园。

       接下来一个整数Q,表示Q组询问。

       接下来Q行,每行一组询问x, w,表示Mr. Panda从x号花园出发,他能忍受的走同一段路的花费的最大值w。如果type=0,则输入给定的x和w均为真实的x和w。如果type=1,则输入给定的x和w均为加密后的x和w。设上一次询问的答案为last,则需要将x和w均与last异或后才能得到真实的x和w。特别地,对于第一组询问,last = 0。

Output

       输出Q行,每行一个整数表示Mr. Panda最多能采到的花是哪种颜色的花。如果有多种颜色符合条件,选择颜色编号最小的输出。

Sample Input

【样例输入1】
5 6 0
2 1 1 3 2
1 2 2
1 3 4
2 3 7
3 4 5
4 5 6
5 3 3
4
1 1
2 2
4 4
5 8
【样例输入2】
5 6 1
2 1 1 3 2
1 2 2
1 3 4
2 3 7
3 4 5
4 5 6
5 3 3
4
1 1
0 0
5 5
6 11

Sample Output

【样例输出1】
2
1
3
1
【样例输出2】
2
1
3
1

HINT

【样例解释】

第二组数据解密后即是第一组数据。

第一组询问:没有路可以走,故从1号点只能采颜色2的花1朵,故答案为2。

第二组询问:第1条路可以走,故从2号点开始可以采颜色1的花1朵,颜色2的花1朵,故答案为1。

第三组询问:第1、2、6条路可以走,故从4号点开始可以采颜色3的花1朵,故答案为3。

第四组询问:所有路都可以走,故从5号点开始可以采颜色1的花2朵,颜色2的花2朵,颜色3的花1朵,故答案为1。

【数据范围与约定】

本题设有5个测试点。

第1个测试点:  N

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值