牛客網 浮點數加法 大數運算系列

2021-10-05 08:57:28 字數 1460 閱讀 9234

忘記補位了/(ㄒoㄒ)/~~,我的羸弱思路:

我的習慣是將乙個數字1234,以a[4]=的形式儲存在vector中,這樣如果最高位有進製的話可以直接pushback。

vec sum

(vec v1, vec v2, ll mod =0)

for(

int i = l1; i < l2; i++)if

(mod >

0)v.

push_back

(mod)

;return v;

}//小數部分的加減單獨處理

vec sum2

(vec v1, vec v2)

if(mod >

0)v.

push_back

(mod)

;for

(int i =

0; i < l2 - l1; i++

) v[i]

= v2[i]

;return v;

}int

main()

for(

int i =

0; i < l2; i++

) vr =

sum2

(v1r, v2r)

;//分別求和,小數部分可能存在進製

if(vr.

size()

>

max(l1 - k1 -

1, l2 - k2 -1)

)mod = vr[vr.

size()

-1], vr.

pop_back()

; vl =

sum(v1l, v2l, mod)

;reverse

(vl.

begin()

, vl.

end())

;reverse

(vr.

begin()

, vr.

end())

;//逆序輸出

for(

int i =

0; i < vl.

size()

; i++

)cout << vl[i]

; cout <<

".";

while

(vr[vr.

size()

-1]==

0)vr.

pop_back()

;//略去小數部分末尾0

for(

int i =

0; i < vr.

size()

; i++

)cout << vr[i]

; cout << endl;

}}

浮點數的大數加法

include stdafx.h include include include include include include include using namespace std std ifstream cin in.txt std ofstream cout out.txt std str...

大整數運算 浮點數加法

題目描述 求2個浮點數相加的和 題目中輸入輸出 現浮點數都有如下的形式 p1p2 pi.q1q2 對於整數部分,p1p2 pi是乙個非負整數 對於小數部分,不等於0 輸入 對於每組案例,第1行是測試資料的組數n,每組測試資料佔2行,分別是兩個加數。每組測試資料之間有乙個空行,每行資料不超過100個字...

大數加法,高精度加法(附帶有牛客網例題)

模板 include using namespace std typedef long long ll define n 10010 ll cnt1,cnt2 記錄兩個數的位數 string a,b 字串輸入倆大數 ll m n n n 按位依次將string a,b中的數儲存到ll陣列a,b中 i...