题目名称 | 3544. XOR |
---|---|
输入输出 | xorcal.in/out |
难度等级 | ★★★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 | syzhaoss 于2021-03-09加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:1, 提交:1, 通过率:100% | ||||
op_组撒头屯 | 100 | 0.174 s | 0.67 MiB | C++ |
关于 XOR 的近10条评论(全部评论) |
---|
给定你由$n$个整数构成的整数序列,你可以从中选取一些(至少一个)进行异或(XOR)运算,从而得到很多不同的结果。
请问,所有能得到的不同的结果中第$k$小的结果是多少。
第一行包含整数$T$,表示共有$T$组测试数据。
对于每组测试数据,第一行包含整数$n$。
第二行包含 $n$个整数,表示完整的整数序列。
第三行包含整数$q$,表示询问的次数。
第四行包含$q$个整数 $k_1,k_2,…,k_q$,表示$q$个询问对应的$k$。
对于每组测试数据,第一行输出 Case #C:,其中$C$为顺序编号(从 1开始)。
接下来$q$行描述$q$次询问的结果,每行输出一个整数,表示第$i$次询问中第$k_i$小的结果。
如果能得到的不同结果的总数少于$k_i$,则输出$-1$。
2 2 1 2 4 1 2 3 4 3 1 2 3 5 1 2 3 4 5
Case #1: 1 2 3 -1 Case #2: 0 1 2 3 -1
如果只选取一个数字进行运算,则结果为该数字本身。
$1\leq n,q\leq 10000$
$1\leq k_i\leq 10^{18}$
《算法竞赛进阶指南》