問題描述
求兩個不超過 200 位的非負(fù)整數(shù)的積襟己。
輸入
有兩行,每行是一個不超過 200 位的非負(fù)整數(shù),沒有多余的前導(dǎo) 0垂谢。
輸出
一行,即相乘后的結(jié)果厦画。結(jié)果里不能有多余的前導(dǎo) 0,即如果結(jié)果是 342,那么就不能輸出為 0342。
輸入樣列
12345678900
98765432100
輸出樣例
1219326311126352690000
算法實現(xiàn)
using System;
namespace Questions{
class Program{
public static void Main(string[] args){
string m = Console.ReadLine();
string n = Console.ReadLine();
int[] k=new int[400];
for (int i = 0; i < n.Length; i++)
{
for (int j = 0; j < m.Length; j++)
{
int temp = k[j + i] + (n[n.Length - i - 1] - '0') * (m[m.Length - j - 1] - '0');
if (temp >= 10)
{
k[j + i + 1]+= temp/10;
k[j + i] = temp - 10*(temp / 10);
}
else
k[j + i] = temp;
}
}
int l = 400;
while (k[l - 1] == 0)
l--;
for (int i = l-1; i >= 0; i--)
Console.Write(k[i]);
Console.WriteLine();
Console.ReadKey();
}
}
}