CF1615B.And It's Non-Zero
普及-
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given an array consisting of all integers from [l,r] inclusive. For example, if l=2 and r=5, the array would be [2,3,4,5]. What's the minimum number of elements you can delete to make the bitwise AND of the array non-zero?
A bitwise AND is a binary operation that takes two equal-length binary representations and performs the AND operation on each pair of the corresponding bits.
给你一个包含区间 [l,r] 内所有整数的数组。例如,若 l=2 且 r=5,则该数组为 [2,3,4,5]。你需要删除最少多少个元素,才能使该数组的按位与结果非零?
按位与(bitwise AND)是一种二元运算,它对两个等长的二进制表示逐位执行逻辑与操作。
输入格式
The first line contains one integer t (1≤t≤104) — the number of test cases. Then t cases follow.
The first line of each test case contains two integers l and r (1≤l≤r≤2⋅105) — the description of the array.
第一行包含一个整数 t(1≤t≤104)—— 测试用例的数量。随后是 t 个测试用例。
每个测试用例的第一行包含两个整数 l 和 r(1≤l≤r≤2⋅105)—— 描述该数组。
输出格式
For each test case, output a single integer — the answer to the problem.
对于每个测试用例,输出一个整数——即该问题的答案。
输入输出样例
输入#1
5 1 2 2 8 4 5 1 5 100000 200000
输出#1
1 3 0 2 31072
说明/提示
In the first test case, the array is [1,2]. Currently, the bitwise AND is 0, as 1 & 2=0. However, after deleting 1 (or 2), the array becomes [2] (or [1]), and the bitwise AND becomes 2 (or 1). This can be proven to be the optimal, so the answer is 1.
In the second test case, the array is [2,3,4,5,6,7,8]. Currently, the bitwise AND is 0. However, after deleting 4, 5, and 8, the array becomes [2,3,6,7], and the bitwise AND becomes 2. This can be proven to be the optimal, so the answer is 3. Note that there may be other ways to delete 3 elements.
在第一个测试用例中,数组为 [1,2]。当前按位与结果为 0,因为 1 & 2=0。然而,删除 1(或 2)后,数组变为 [2](或 [1]),此时按位与结果变为 2(或 1)。可以证明这是最优方案,因此答案为 1。
在第二个测试用例中,数组为 [2,3,4,5,6,7,8]。当前按位与结果为 0。然而,删除 4、5 和 8 后,数组变为 [2,3,6,7],此时按位与结果变为 2。可以证明这是最优方案,因此答案为 3。注意,可能存在其他删除 3 个元素的方式。
输入解题思路,AI测评打分。不知道怎么写?