有一些毒瘤题,数据大小不光会炸\(int\),有时甚至会炸\(long long\)。这时一个\(O(1)\)的防爆乘就很重要了

\(a*b%p\)可以转化为\(a*b-[a*b/p]*p\) 这里用了\(long double\)舍弃低位保留18位的特性

最后不要忘记特判

inline ll C(ll a,ll b,ll p){
	a%=p,b%=p;
	ll c=a*b-(ll)((long double)a*b/p+0.5)*p;
	return c<0?c+p:c;
}

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-07-13
  • 2021-10-02
  • 2021-07-22
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-28
  • 2022-12-23
相关资源
相似解决方案