藍橋杯 P1001 大數乘法

2021-07-09 18:22:53 字數 686 閱讀 6119

演算法提高 p1001  

時間限制:1.0s   記憶體限制:256.0mb

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

輸入:62773417 12345678

輸出:774980393241726

#include#includechar s1[20],s2[20];

int a1[20],a2[20],result[25];

int l1,l2;

void mul()

int main()

memset(a2,0,sizeof(a2));

l2=strlen(s2);

for(int i=0; iif(((l1==1)&&(a1[0]==0))||((l2==1)&&(a2[0]==0)))//注意把至少有乙個乘數為0的情況單獨拿出來考慮

printf("0\n");

else

mul();

return 0;

}

藍橋杯練習題P1001 大數乘法

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

演算法提高 P1001 大數乘法

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

演算法提高 P1001 (大數相乘)

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