/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* @param s string字符串 第一个整数
* @param t string字符串 第二个整数
* @return string字符串
*/
char* solve(char* s, char* t ) {
int lens=strlen(s),lent=strlen(t),lenm=lens+lent;// write code here
int result[lenm],k;
char *r_s=(char*)malloc(lenm);//返回用的字符串
for(int i=0;i<lenm;i++)
{
result[i]=0;
}
for(int i=0;i<lens;i++)
for(int j=0;j<lent;j++)//以单个数字为单位分别计算
{
k=lenm-(lens-i+lent-j-1);
result[k]+=(s[i]-'0')*(t[j]-'0');
}
for(int i = lenm - 1; i > 0; i--) //总数转字符串
{
result[i - 1] += result[i] / 10;
r_s[i] = result[i] % 10 + '0';
}
r_s[0] = result[0] + '0';
if(*r_s=='0') r_s=&r_s[1];//如果最高位为0则去掉
return r_s;
}
|