CF1665E MinimizOR
题目描述
给出一个长度为 $n$ 的非负整数数列 $a$,下标编号从 $1$ 到 $n$。
定义一个数列 $a$ 的代价为 $\min\limits_{i\neq j} a_i|a_j$,其中 $|$ 表示 [按位或](https://en.wikipedia.org/wiki/Bitwise_operation#OR) 运算。
$q$ 个询问,每个询问给出两个整数 $l,r\ (l
输入格式
无
输出格式
无
说明/提示
In the first test case the array $ a $ is
$ 110_2, 001_2, 011_2, 010_2, 001_2 $ .
That's why the answers for the queries are:
- $ [1; 2] $ : $ a_1 | a_2 = 110_2 | 001_2 = 111_2 = 7 $ ;
- $ [2; 3] $ : $ a_2 | a_3 = 001_2 | 011_2 = 011_2 = 3 $ ;
- $ [2; 4] $ : $ a_2 | a_3 = a_3 | a_4 = a_2 | a_4 = 011_2 = 3 $ ;
- $ [2; 5] $ : $ a_2 | a_5 = 001_2 = 1 $ .
In the second test case the array $ a $ is
$ 00_2, 10_2, 01_2, \underbrace{11\ldots 1_2}_{30} $ ( $ a_4 = 2^{30} - 1 $ ).
That's why the answers for the queries are:
- $ [1; 2] $ : $ a_1 | a_2 = 10_2 = 2 $ ;
- $ [2; 3] $ : $ a_2 | a_3 = 11_2 = 3 $ ;
- $ [1; 3] $ : $ a_1 | a_3 = 01_2 = 1 $ ;
- $ [3; 4] $ : $ a_3 | a_4 = 01_2 | \underbrace{11\ldots 1_2}_{30} = 2^{30} - 1 = 1073741823 $ .