#include <stdio.h>
int main()
{
unsigned long long l, r;
unsigned long long finger = (unsigned long long)1 << 63;
scanf("%I64u%I64u", &l, &r);
if(l == r)
finger = 0;
else {
while(!((l&finger) ^ (r&finger)))
finger >>= 1;
finger = (finger << 1) - 1;
}
printf("%I64u\n", finger);
return 0;
}
我漏了第6行的强制类型转换,后来发现了这个错误。
Codeforces 276D. Little Girl and Maximum XOR
最新推荐文章于 2018-05-12 19:54:48 发布