AT_arc191_b.[ARC191B] XOR = MOD
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定正整数 N,K。若正整数 X 满足以下条件,则称其为与 N 兼容的数:
- X 与 N 的异或值等于 X 除以 N 的余数,即 X⊕N=XmodN。
请判断是否存在至少 K 个与 N 兼容的数。若存在,请输出其中第 K 小的数。
给定 T 个测试用例,请分别计算每个用例的答案。
异或的定义:非负整数 A,B 的异或 AXORB 定义如下:
- AXORB 的二进制表示中第 2k(k≥0)位的值为 1,当且仅当 A 和 B 在二进制表示的第 2k 位中有且仅有一个为 1,否则为 0。
例如,3XOR5=6(二进制表示为:011XOR101=110)。
输入格式
输入通过标准输入给出,格式如下:
T
case1
case2
⋮
caseT
其中,casei 表示第 i 个测试用例。每个测试用例的格式为:
N K
输出格式
对于每个测试用例,若与 N 兼容的数至少有 K 个,则输出第 K 小的数;否则输出 −1。
输入输出样例
输入#1
4 2 1 2 2 1 7 20250126 191
输出#1
2 3 -1 20381694
说明/提示
约束条件
- 1≤T≤2×105
- 1≤N,K≤109
- 输入均为整数
样例解释 1
以 N=2 为例:
- 当 X=1 时,X⊕N=3,而 XmodN=1,因此 1 不是与 N 兼容的数。
- 当 X=2 时,X⊕N=0,而 XmodN=0,因此 2 是与 N 兼容的数。
- 当 X=3 时,X⊕N=1,而 XmodN=1,因此 3 是与 N 兼容的数。
综上,与 2 兼容的数中第 1 小的正整数是 2,第 2 小的正整数是 3。因此第一个测试用例的答案为 2,第二个测试用例的答案为 3。
翻译由 DeepSeek R1 完成
输入解题思路,AI测评打分。不知道怎么写?