题目: CF484A Bits ,哈哈,我们今天来看一道简单的位运算的题嘛,这是选自codeforce上的一道题,好了,我们一起来看看题意吧:
题目描述是复制的,可能有部分显示不对,我就把题目链接放下面!
题目链接: CF484A Bits
题目描述
输入描述
输出描述
For each query print the answer in a separate line.
示例1
输入
3
1 2
2 4
1 10
输出
1
3
7
思路
:
只要l是小于等于r的,我们采用位运算符|,每次|(或)一次。具体的看看代码,这道题要注意题目范围,要开long long
我们来看看成功AC的代码吧:
#include<bits/stdc++.h> using namespace std; int n; long long l,r,t,ct; int main(){ cin.tie(0); ios::sync_with_stdio(false); cin>>n; while(n--){ cin>>l>>r; long long p=1; ct=0; t=l; while(l<=r){ t=l; l=l|p; p<<=1; } cout<<t<<"\n"; } //1 1000000000000000000 return 0; }