A29153.狒狒食肆
普及/提高-
官方
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
时间限制:1000ms
空间限制:128mb
Yuilice正在游玩一款名为FF14的游戏,在这款游戏当中,有一个大BOSS佐迪亚克,为了打败他,Yuilice需要在古代人世界当中搜索十四人委员会留下来的徽章,最后合成阿谢姆徽章打败佐迪亚克。
现在已知共有n个徽章,每个徽章都有着一定的力量,他们的力量值分别为a1,a2,a3..…an,这些力量之间可能会有一些微妙的冲突,若ai与aj(i=j)进行合并,那么他们会按照下面的规则进行合并力量。
- 首先我们会将ai与aj转换为二进制形式进行比较
- 若ai的最后一位1与aj的最后一位1处于相同位数上,那么力量总和为ai∣aj。
- 若ai的最后一位1与aj的最后一位1不处于相同位数上,那么力量总和为两者当中最低位1的数字。
例: 若数字5与7进行合并,那么他们会进行5 | 7 = 7
的运算,若12
与32
进行合并,那么他们会保留两者当中最低位的1,即为4
。
现在Yuilice会给出q个搜索计划,每次计划都会提出一个区间[L,R],即为将aL,aL+1…aR,面对每个区间,你需要寻找区间当中所有数合并出来的最大值MX与最小值Mi并且输出。
输入格式
输入第一行为两个正整数n,q(1≤n≤102,1≤q≤103) - 代表共有n个徽章的力量值与q次提问
随后一行,共输入n个正整数ai(1≤ai≤231−1),代表每个徽章的力量值。
随后q行,每行给出一对整数li,ri,代表当前要查阅的区间。
输出格式
针对于每一次询问,输出一个整数x - 代表区间的力量总值
输入输出样例
输入#1
10 5 4 12 20 36 68 2 18 38 128 90 1 5 1 6 4 7 5 9 1 10
输出#1
124 124 2 2 18 2 54 2 126 2
说明/提示
【样例1部分解释】
- 范围[1,5]的数字4,12,20,36,68二进制最小位1都为4,集合进行或运算的最大值与最小值为[1,5]集合的或运算。
- 范围[1,6]的数字4,12,20,36,68,2二进制的最小位为2,因此最大值与最小值最终都会化为数字2。
【数据点分布】
- 1~5的数据范围为: 1≤ai≤210,1≤q,n≤10
- 6~10的数据范围无限制