x(负数) mod y(正数) = z
其中x<z<=0 , 且(z-x) mod y=0。
求法:z=x+abs(x)/y*y (这里的除法结果向下取整)
所以当求一个数经过各种计算后的取余,只需
ans=(ans+x*y)%yu
ans=(ans-x*y)%yu
ans=ans*x%yu
除法:用线性逆元
最后
ans=(ans+yu)%yu (要是之前有减法运算)
本文共 236 字,大约阅读时间需要 1 分钟。
x(负数) mod y(正数) = z
其中x<z<=0 , 且(z-x) mod y=0。
求法:z=x+abs(x)/y*y (这里的除法结果向下取整)
所以当求一个数经过各种计算后的取余,只需
ans=(ans+x*y)%yu
ans=(ans-x*y)%yu
ans=ans*x%yu
除法:用线性逆元
最后
ans=(ans+yu)%yu (要是之前有减法运算)
转载于:https://www.cnblogs.com/cmyg/p/6906187.html