MR求调
查看原帖
MR求调
294562
EDqwq楼主2021/5/13 17:40
bool MRtest(int x,int y){
	int s = x - 1,res;
	while(s){
		res = poww(y,s,x);
		if(res ^ 1 && res + 1 != x)return false;
		if(s % 2 == 1 || res + 1 == x)return true;
		s /= 2;
	}
	return true;
}

bool isprime(int x){
	if(x <= 1)return false;
	if(x == 2)return true;
	for(int i = 1;i <= 8;i ++){
		if(x == num[i])return true;
		if(x % num[i] == 0)return false;
		if(!MRtest(x,num[i]))return false;
	}
	return true;
}
2021/5/13 17:40
加载中...