关于暴力求逆元
  • 板块学术版
  • 楼主lrqcs
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/7/31 12:02
  • 上次更新2024/7/31 14:05:15
查看原帖
关于暴力求逆元
1364494
lrqcs楼主2024/7/31 12:02

刚刚我用一种歪解(费马小定理+暴力)卡过了P1082,现在想卡掉自己这个解,但试了几组发现行不通。b为2e9时暴力循环还跑不到1e8。求HACK。

代码

#include<stdio.h>
#define ll unsigned long long
ll a,p;
ll qpow(ll a,ll b,const ll p){
	ll c=1;
	while(b){
		if(b&1)c=c*a%p;
		a=a*a%p,b>>=1;
	}return c;
}
int main(){
	scanf("%llu%llu",&a,&p);
	for(ll i=2;i*i<=p;++i)if(p%i==0)goto D;
	printf("%llu",qpow(a,p-2,p));
	return 0;
	D:ll c=a,d;
	for(;(d=c*a%p)^1;c=d);
	printf("%llu",c);
	return 0;
}

吃饭去了,14点之后再看。

2024/7/31 12:02
加载中...