題目描述:輸入兩個很大的正數(用c字串表示),輸出他們的乘積。
採用的方法可以模擬手工乘法
關鍵步驟
void multiply(const
char *a,const
char *b)
for (int i = 0; i < ca; i++)
for (int j = 0; j < cb; j++)
s[i + j + 1] += (a[i] - '0')*(b[j] - '0');
for (int i = ca+cb-1; i >=0; i--)
if (s[i] > 9)
string c;
i = 0;
while (s[i] == 0)i++;
for (; i < ca + cb; i++)
c.push_back(s[i] + '0');
cout
<< c << endl;
}
核心思想:可以依次掃瞄字串,每掃瞄到乙個字元,我們把在這之前得到的數字乘以10再加上當前字元表示的數字。
核心**:
while (*digit != '/0')
digit++;
}}
在這裡面值得注意的是基本資料型別最大值的獲取方法:語句1 1162 數字 字串
時間限制 1000 ms 記憶體限制 65535 kb 難度 0 描述 有一行數字 現在定義 0表示空格,即這行數字被分割成若干個數 要求將這些數按照從小到大順序排列,若該行數字全為零 則表示為零,兩個數字之間可能有多個0,開頭和結尾可能都有0,所有的0都看成空格,數字的個數不超過100。輸入輸入有...
搭數字(字串)
搭數字 描述 搭出數字1需要兩個筷子,數字2需要5根筷子 現在就有疑問了,給定n 2 n 100 根筷子,那個可以組成的最大數是多少?輸入每行給定乙個筷子數量n 2 n 100 輸出每行輸出用這n根筷子所能組成的最大數字 輸入樣例 136 715輸出樣例 1 7111 7117111111 stri...
標準數字字串
c 或 c 貨幣結果 貨幣值。受以下型別支援 所有數值型別。精度說明符 小數字數。預設值精度說明符 由 numberformatinfo.currencydecimaldigits 定義。更多資訊 貨幣 c 格式說明符。123.456 c en us 123.46 123.456 c fr fr 1...