XOR Hard_题解

【题解提供者】吴立强

解法

思路

注意到 r r r l l l 较小,考虑暴力计算。

代码展示

#include 
using namespace std;

int main() {
	int l, r;  cin >> l >> r;
	int ans = 0;
	for(int i = l; i <= r; i ++) ans ^= i;
	cout << ans;
	return 0;
}

算法分析

程序时间复杂度 O ( r − l ) O(r-l) O(rl)

拓展

一般来说,for 循环的运行速度较快(内部逻辑简单,分支语句少时),而程序单次计算的时间复杂度一般为:位运算 < 加减运算 < 乘法运算 < 除模运算。(暴力出奇迹)

你可能感兴趣的:(算法,c++,数据结构)