提交时间:2026-06-06 16:42:51
运行 ID: 42011
#include<bits/stdc++.h> using namespace std; long long _,l,r; int main(){ scanf("%lld",&_); while(_--){ scanf("%lld%lld",&l,&r); long long ans=0,last=0; for(long long i=0;i<=40;i++){ if(((l>>i)&1)==1 || ((long long)1<<i)-last<=r-l){ ans+=((long long)1<<i); } if(((l>>i)&1)==1){ last+=((long long)1<<i); } } printf("%lld\n",ans); } }