同余的性质
这是非常常用的东西
(a+b)%n==(a%n+b%n)%n 同加性
(a*b)%n==((a%n)*(b%n))%n 同乘性
但是,同余不满足同除性!
这点在处理涉及到排列组合结果要求余的时候千万要小心!
千万不要在做涉及除法运算的大结果式子的时候去边算边求余!
(这种一般采用素数高精法处理,不是这里的讨论范围了
贴一下代码吧:
/* 2035 */
//同余的性质
#include <stdio.h>
int main()
{
int m,n,i;
long s;
while(scanf("%d %d",&m,&n),m||n)
{
s=1;
for(i=1;i<=n;i++)
{
s=(s%1000)*(m%1000);
}
printf("%d\n",s%1000);
}
return 0;
}
转载于:https://blog.51cto.com/liu168ad/1379590