惨痛的教训(改了一行,70->100)
查看原帖
惨痛的教训(改了一行,70->100)
161221
FL4K楼主2020/10/28 19:57

原快速幂部分

ll qpow(ll a, ll b) {
	ll res = 1;
	while (b) {
		if (b & 1) res = (res * a) % mod;
		a = (a * a) % mod;
		b = b >> 1;
	}
	return res;
}

新快速幂部分

ll qpow(ll a, ll b) {
	ll res = 1;
	a = a % mod;//!!!
	while (b) {
		if (b & 1) res = (res * a) % mod;
		a = (a * a) % mod;
		b = b >> 1;
	}
	return res;
}

因为带入函数a的范围是10^15,所以如果不事先取模会在第一次a=(a*a)%mod直接炸掉QAQ

2020/10/28 19:57
加载中...