HDU 2035 人見人愛A B(快速冪)

2021-07-12 01:29:46 字數 694 閱讀 1223

problem description

求a^b的最後三位數表示的整數。

說明:a^b的含義是「a的b次方」

input

輸入資料報含多個測試例項,每個例項佔一行,由兩個正整數a和b組成(1<=a,b<=10000),如果a=0, b=0,則表示輸入資料的結束,不做處理。

output

對於每個測試例項,請輸出a^b的最後三位表示的整數,每個輸出佔一行。

sample input

2 3

12 6

6789 10000

0 0sample output

8 984

1本題是一道快速冪的題目。暴力沒試,目測可以過。快速冪的時間是0ms,下面是ac**:

#include

#include

#include

using namespace std;

int quick_mod(int a,int b,int mod)

b=b/2;

a=a*a

%mod;

}return ans;

}int main()

int re=quick_mod(a,b,1000);

printf("%d\n",re);

}return

0;}

HDU 2035 人見人愛A B

法一 每次取餘數 include includeint main system pause return 0 法二 其實直接每次取餘數就能過的 第一遍就是用這種方法過的 這次算是用二分加速過的吧 就是每次都講底數平方 指數除以2 要是偶數沒問題 要是奇數就在將多餘的那部成到sum中 初始值為1 不停...

HDU 2035 人見人愛A B

problem description 求a b的最後三位數表示的整數。說明 a b的含義是 a的b次方 input 輸入資料報含多個測試例項,每個例項佔一行,由兩個正整數a和b組成 1 a,b 10000 如果a 0,b 0,則表示輸入資料的結束,不做處理。output 對於每個測試例項,請輸出a...

HDU 2035 人見人愛A B

題目連線 法一 每次取餘數 1 include2 include3 intmain 413 system pause 14return0 15 法二 其實直接每次取餘數就能過的 第一遍就是用這種方法過的 這次算是用二分加速過的吧 就是每次都講底數平方 指數除以2 要是偶數沒問題 要是奇數就在將多餘的...