社区讨论

这个代码还能怎样优化啊

灌水区参与者 7已保存回复 12

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
12 条
当前快照
1 份
快照标识符
@lozjrvlw
此快照首次捕获于
2023/11/15 17:15
2 年前
此快照最后确认于
2023/11/15 19:17
2 年前
查看原帖
代码如下
CPP
//
// Created by ymbdff on 2023.11.15
//
#include <iostream>
#include <ctime>
using namespace std;

#define LL unsigned long long
#define int unsigned int
const int MOD = 998244353;

static int n, k, i; LL ans;
inline int ksm(register LL a, register int p){
	register int temp = 1;
	for (; p; p >>= 1){
		if (p & 1) temp = (1ll * temp * a) % MOD;
		a *= a;a %= MOD;
	}
	// cout << (1ll * temp + k) % MOD;puts("");
	return temp;
}
signed main(){
	// freopen("E.out","w",stdout);
	ios::sync_with_stdio(false);
	cin >> n >> k;
	for (i = 1; i <= n; ++i){
		ans = ans xor (1ll * ksm((LL)(i), i) + k) % MOD;
	}
	cout << ans;
}
//19999983 986094939
数据规模 n\le 2e7,极限情况下跑了1.2秒,请问还能怎么优化

回复

12 条回复,欢迎继续交流。

正在加载回复...