HDOJ 2035

同餘的性質

這是非常常用的東西

(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;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章