計算機機試題 二分求冪

2021-08-21 09:03:09 字數 572 閱讀 7888

求a^b的最後三位數表示的整數。說明:a^b的含義是「a的b次方」

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

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

2 3

12 6

6789 10000

0 0

8

9841

**如下:

#include#includeint main()

b /= 2;

a *= a;

a %=1000; //求其後三位數

} printf("%d\n", ans);

} return 0;

}

思路如下:首先這個題考察的是二分求冪,這是一種快速求出有關冪指數的方法。同時還要注意題目中給出的數字的範圍十分大,因此我們每次都和1000取餘,因為題目中只要求後三位的數,這一點十分重要,一定要學會。

計算幾何 二分求冪

如何快速求解 a 的 b次冪?王道機試指南 p85 待整理 題目 九度1441 1442 1443 include include using namespace std 題目要求最後三位,故中間值也只用保留三位即可,可避免了中間值太大導致無法儲存 int main b 2 a a 下一位二進位制的...

二分求冪,快速求冪

1 2 3 4 5 6 7 8 9 10 11 12 intpow3 inta,intb returnr 12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 intpow4 intx,intn result x n 1 whil...

二分求冪 3

題目1443 tr a 題目描述 a為乙個方陣,則tr a表示a的跡 就是主對角線上各項的和 現要求tr a k 9973。輸入 資料的第一行是乙個t,表示有t組資料。每組資料的第一行有n 2 n 10 和k 2 k 10 9 兩個資料。接下來有n行,每行有n個資料,每個資料的範圍是 0,9 表示方...