NOI1 13 9 大整數乘法 題解 C

2021-10-23 05:16:32 字數 1096 閱讀 6502

這次的一題又是高精度系列的了。。。先看一下題目:

總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...