题目名称 3276. [SCOI 2016]幸运数字
输入输出 luckynum.in/out
难度等级 ★★★☆
时间限制 7000 ms (7 s)
内存限制 256 MiB
测试数据 10
题目来源 Gravatar瑆の時間~無盡輪迴·林蔭 于2019-11-05加入
开放分组 全部用户
提交状态
分类标签
线性基 倍增法 树链剖分 树分治
分享题解
通过:1, 提交:7, 通过率:14.29%
Gravatar梦那边的美好ET 100 27.152 s 144.14 MiB C++
Gravatar梦那边的美好ET 70 45.022 s 183.23 MiB C++
Gravatar瑆の時間~無盡輪迴·林蔭 40 6.644 s 83.35 MiB C++
Gravatar梦那边的美好ET 25 9.235 s 211.51 MiB C++
Gravatar梦那边的美好ET 25 9.262 s 211.51 MiB C++
Gravatar梦那边的美好ET 20 32.262 s 211.51 MiB C++
GravatarShallowDream雨梨 0 30.000 s 208.78 MiB C++
本题关联比赛
4043级2023省选练习赛2
关于 幸运数字 的近10条评论(全部评论)

3276. [SCOI 2016]幸运数字

★★★☆   输入文件:luckynum.in   输出文件:luckynum.out   简单对比
时间限制:7 s   内存限制:256 MiB

【题目描述】

$A$ 国共有 $n$ 座城市,这些城市由 $n-1$ 条道路相连,使得任意两座城市可以互达,且路径唯一。每座城市都有一个幸运数字,以纪念碑的形式矗立在这座城市的正中心,作为城市的象征。

一些旅行者希望游览 $A$ 国。旅行者计划乘飞机降落在 $x$ 号城市,沿着 $x$ 号城市到 $y$ 号城市之间那条唯一的路径游览,最终从 $y$ 城市起飞离开 $A$ 国。在经过每一座城市时,游览者就会有机会与这座城市的幸运数字拍照,从而将这份幸运保存到自己身上。然而,幸运是不能简单叠加的,这一点游览者也十分清楚。他们迷信着幸运数字是以异或的方式保留在自己身上的。

例如,游览者拍了 $3$ 张照片,幸运值分别是 $5,7,11$,那么最终保留在自己身上的幸运值就是 $9(5\ xor\ 7\ xor\ 11)$。

有些聪明的游览者发现,只要选择性地进行拍照,便能获得更大的幸运值。例如在上述三个幸运值中,只选择 $5$ 和 $11$ ,可以保留的幸运值为 $14$。现在,一些游览者找到了聪明的你,希望你帮他们计算出在他们的行程安排中可以保留的最大幸运值是多少。

【输入格式】

第一行包含 $2$ 个正整数 $n ,q$,分别表示城市的数量和旅行者数量。

第二行包含 $n$ 个非负整数,其中第 $i$ 个整数 $G_i$ 表示 $i$ 号城市的幸运值。

随后 $n-1$ 行,每行包含两个正整数 $x ,y$,表示 $x$ 号城市和 $y$ 号城市之间有一条道路相连。

随后 $q$ 行,每行包含两个正整数 $x ,y$,表示这名旅行者的旅行计划是从 $x$ 号城市到 $y$ 号城市。$N \leq 20000,Q \leq 200000,G_i \leq 2^{60}$。

【输出格式】

输出需要包含 $q$ 行,每行包含 $1$ 个非负整数,表示这名旅行者可以保留的最大幸运值。

【样例1输入】

4 2
11 5 7 9
1 2
1 3
1 4
2 3
1 4

【样例1输出】

14
11

【样例2】

点击下载样例2

【数据规模】

对于 $10\%$ 的数据,$N \leq 100, Q \leq 100, G_i \leq 10 ^ {6}$;

对于 $20\%$ 的数据,$N \leq 1000, Q \leq 1000, G_i \leq 10 ^ {10}$;

对于 $100\%$ 的数据,$N \leq 20000, Q \leq 200000, G_i \leq 2 ^ {60}$;