P4592 [TJOI2018]异或

    • 293通过
    • 721提交
  • 题目提供者 Xeonacid
  • 评测方式 云端评测
  • 标签 可持久化 贪心 进制 各省省选 2018 天津
  • 难度 省选/NOI-
  • 时空限制 3000ms / 256MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 体验新版界面

    最新讨论 显示

    推荐的相关题目 显示

    题目描述

    现在有一颗以$1$为根节点的由$n$个节点组成的树,树上每个节点上都有一个权值$v_i$。现在有$Q$次操作,操作如下:

    • $1\;x\;y$:查询节点$x$的子树中与$y$异或结果的最大值
    • $2\;x\;y\;z$:查询路径$x$到$y$上点与$z$异或结果最大值

    输入输出格式

    输入格式:

    第一行是两个数字$n,Q$;

    第二行是$n$个数字用空格隔开,第$i$个数字$v_i$表示点$i$上的权值

    接下来$n-1$行,每行两个数,$x,y$,表示节点$x$与$y$之间有边

    接下来$Q$行,每一行为一个查询,格式如上所述.

    输出格式:

    对于每一个查询,输出一行,表示满足条件的最大值。

    输入输出样例

    输入样例#1: 复制
    7 5
    1 3 5 7 9 2 4
    1 2
    1 3
    2 4
    2 5
    3 6
    3 7
    1 3 5
    2 4 6 3
    1 5 5
    2 5 7 2
    1 1 9
    输出样例#1: 复制
    7
    6
    12
    11
    14

    说明

    对于$10\%$的数据,有$1<n,Q\leq100$

    对于$20\%$的数据,有$1<n,Q\leq1000$

    对于$40\%$的数据,有$1<n,Q\leq10000$

    对于$100\%$的数据,有$1<n,Q\leq100000$

    对于$100\%$的数据,有查询$1$中的$y<2^{30}$,查询$2$中的$z<2^{30}$。

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。