演算法提高P1001

2022-01-12 06:36:27 字數 775 閱讀 6160

當兩個比較大的整數相乘時,可能會出現資料溢位的情形。為避免溢位,可以採用字串的方法來實現兩個大數之間的乘法。具體來說,首先以字串的形式輸入兩個整數,每個整數的長度不會超過8位,然後把它們相乘的結果儲存在另乙個字串當中(長度不會超過16位),最後把這個字串列印出來。例如,假設使用者輸入為:62773417和12345678,則輸出結果為:774980393241726.

輸入:

62773417 12345678

輸出:

774980393241726

主要注意的是進製的問題。。。。

#include #include 

void multiply(char *s, char *s1, char *s2)

else

k ++;

}if(count > 0

) s2[k] = count + '0'

; }

//下面這種方式只能避免最後乙個0,最後輸出的時候還是要在非0時開始輸出

//更簡單的方式是將k定義全域性變數,故在輸出時候不用strlen求長度

if(!(s2[k] > '

0' || s2[k] == '\0'

)) s2[k] = '\0'

;

else

if(s2[k] > '0'

)

}int

main()

演算法提高 P1001

當兩個比較大的整數相乘時,可能會出現資料溢位的情形。為避免溢位,可以採用字串的方法來實現兩個大數之間的乘法。具體來說,首先以字串的形式輸入兩個整數,每個整數的長度不會超過8位,然後把它們相乘的結果儲存在另乙個字串當中 長度不會超過16位 最後把這個字串列印出來。例如,假設使用者輸入為 6277341...

演算法提高 P1001

演算法提高 p1001 時間限制 1.0s 記憶體限制 256.0mb 當兩個比較大的整數相乘時,可能會出現資料溢位的情形。為避免溢位,可以採用字串的方法來實現兩個大數之間的乘法。具體來說,首先以字串的形式輸入兩個整數,每個整數的長度不會超過8位,然後把它們相乘的結果儲存在另乙個字串當中 長度不會超...

演算法提高 P1001

必須感嘆下,大數模板就是好用!ac include include include include include include include include include include include include using namespace std define eps 1e 10...