#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++)
} while(c.a[c.len] == 0 && c.len > 1) c.len--;
return c;//容易漏
}}a,b;
char s1[maxn],s2[maxn];
int i1,i2;
inline bool pd1()
inline bool pd2()
int main()//答案為 0 時 不應有"-"
if(!pd1() && pd2())
if(pd1() && !pd2())
if(!pd1() && !pd2())
for(int i = a.len - 1; i >= i1; i--)
a.len = a.len - i1;
for(int i = b.len - 1; i >= i2; i--)
b.len = b.len - i2;
a = a * b;
for(int i = a.len; i >= 1; i--)
return 0;
}
補充:高精度除法中高精除高精通常採用減法模擬除法,對每一位被除數都減去除數,一直減到當前位置的數字(包含前面的餘數)小於除數(由於每一位都小於10,所以最多進行10次計算),高精除低精可以直接除。 高精度減法,高精度乘法
高精度減法 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...
高精度乘法
高精度乘法1 樸素運算 傳入引數約定 string string 演算法思想 倒置相乘 然後統一處理進製 再還原 演算法複雜度 o n 2 include using namespace std const int l 110 string mul string a,string b for int...