這次的一題又是高精度系列的了。。。先看一下題目:
總time limit: 1000ms memory limit: 65536kb
description
求兩個不超過200位的非負整數的積。
input
有兩行,每行是乙個不超過200位的非負整數,沒有多餘的前導0。
output
一行,即相乘後的結果。結果裡不能有多餘的前導0,即如果結果是342,那麼就不能輸出為0342。
sample input
12345678900
98765432100
sample output
1219326311126352690000
首先這個絕對不是什麼int,long long,之類的資料型別就可以輕易解決地,肯定要用陣列來逐個處理啦。做法就是類似模擬乘法算式,記住,前導0一定要去掉。
#include
using
namespace std;
intmain()
,n2[
205]
=,n3[
2018]=
;int i,z =
0,j;
int len1 =
strlen
(c1)
,len2 =
strlen
(c2)
;for
(i =
1;i<=len1;i++
)n1[i]
= c1[len1-i]-48
;for
(i =
1;i<=len2;i++
)n2[i]
= c2[len2-i]-48
;for
(i =
1;i<=len1;i++
) n3[i+j-1]
= z;
} i = len1+len2;
while
(n3[i]==0
&&i>=
0)i--;if
(i ==-1
)while
(i>=
1)cout
}
大整數乘法題解
09 大整數乘法 總時間限制 1000ms 記憶體限制 65536kb 描述 求兩個不超過200位的非負整數的積。輸入 有兩行,每行是乙個不超過200位的非負整數,沒有多餘的前導0。輸出 一行,即相乘後的結果。結果裡不能有多餘的前導0,即如果結果是342,那麼就不能輸出為0342。樣例輸入 1234...
NOI1 13 47 大整數除法 題解 C
這題一看題目就知道絕非普通的long long 或 int 這可是高精度呀。47 大整數除法 總time limit 1000ms memory limit 65536kb description 求兩個大的正整數相除的商。input 第1行是被除數,第2行是除數。每個數均不超過100位。刺激不?o...
c 大整數乘法
include include include struct dnode class bigint bigint bigint a bigint friend bigint operator bigint a,bigint b friend bigint operator bigint a,bigi...