假设输入的 y,l,r 均为不超过 ?^
?? − ? 的非负整数,
- 若把第 14 行 i 的类型改为 unsigned int,则程序可能无法结束运行。( )
解析说:√ 因为r=2^32-1时刚好溢出
然而我本地输入80 4294967290 4294967295 正常结束
#include <bits/stdc++.h>
using namespace std;
unsigned f(unsigned x) {
x ^= x << 3;
x ^= x >> 5;
return x;
}
unsigned g(unsigned x) {
return (x >> 5) ^ (x >> 2) ^ x ^ (x << 3);
}
int main() {
unsigned y, l, r;
cin >> y >> l >> r;
unsigned n=0;
for (unsigned long long i = l; i <= r; i++)
if (f(i) == y)
cout << i % 11 << endl;
return 0;
}