題目傳送門:
題意:題目就是要求n的階乘,但n <= 100000,顯然要用到乘法模擬
大致思路就是將乙個數分段儲存起來,由於此題n最大是100000,所以就按5位數字存在乙個元素當中。每次乘的時候就用當前陣列中元素從低位到高位分別去乘,該進製的進製就行了。
**如下:
#include #include #include #include #include #define ll long long
using namespace std;
const int maxn = 10005;
const int mod = 100000;
int main()
printf("%d",a[--len]);
while(len >= 1) printf("%05d",a[--len]);//輸出時按乙個元素五位輸出
return 0;
}
高精度減法,高精度乘法
高精度減法 oj資料偏弱如果新增乙個101 2就錯了,下面這一步是為了防止錯誤的 if a aa 0 可能出現第一位的1被借走的的情況,所以加乙個while找第乙個不是0的 while c i 0 i include include include include include include u...
高精度乘法
問題描述 給你兩個正整數a,b,計算它們的乘積。輸入格式 第一行乙個正整數a 第二行乙個正整數b 輸出格式 一行,表示a b 樣例輸入 111222333444555666777888999 999888777666555444333222111 樣例輸出 提示 a,b分別不超過100000位 ff...
高精度乘法
include include include includeusing namespace std const int maxn 5000 inline int get struct data data operator const data b for int i 1 i c.len i whi...