本人在推出最基本的式子也就是
m!n!×ϕ(m!) 之后交了一发发现是90分,然后把阶乘的逆元本来是
fm[N]=qpow(fz[N],p-2);
for(int i=N-1;i>=0;i--)fm[i]=fm[i+1]*(i+1)%p;
换成了
fm[m] = ksm(fz[m],p-2)//在算的时候直接求而不是预处理
得到了 100 分 但是没过hack。但是特判了一下
if(n>=p)
{
int ans=phi[m];
rep(i,m+1,n)ans=ans*i%p;
printf("%lld\n",(ans%p+p)%p);
return ;
}
就过了,,,,还是不够强啊
这边我自己造了一组样例
hack.in
hack.out
成功把我自己hack并且这个hack.out是用兔队的代码造的有问题也是兔队的代码有问题