美文网首页
听到now那边面试在嘲讽最大数相加有这么难吗,手写一个

听到now那边面试在嘲讽最大数相加有这么难吗,手写一个

作者: portability | 来源:发表于2018-08-07 23:45 被阅读0次

string Solution::addBigInteger(string s1, string s2) {

stack> ss1;

    stack> ss2;

    for (char i : s1) {

ss1.push(i);

    }

for (char j : s2) {

ss2.push(j);

    }

int len = (int) min(s1.length(), s2.length());

    vector result;

    int a,b,c=0;

    for (int k =0; k < len; ++k) {

a = ss1.top() -'0';

        b = ss2.top() -'0';

        ss1.pop();

        ss2.pop();

        result.push_back(((a + b + c) %10) +'0');

        c = (a + b + c ) /10;

    }

if(c){

if(s1.length() > len){

while(!ss1.empty()){

a = ss1.top() -'0';

                result.push_back((a + c) %10 +'0');

                c = (a + c) /10;

                ss1.pop();

            }

}else if(s2.length() > len){

a = ss1.top() -'0';

            while(!ss2.empty()){

result.push_back((a + c) %10 +'0');

                c = (a + c) /10;

                ss2.pop();

            }

}

}else{

if(s1.length() > len){

while(!ss1.empty()){

result.push_back(ss1.top());

                ss1.pop();

            }

}else if(s2.length() > len){

while(!ss2.empty()){

result.push_back(ss2.top());

                ss2.pop();

            }

}

}

string re;

    for(auto i = result.rbegin(); i!= result.rend(); i++){

re+= *i;

    }

return re;

}

相关文章

网友评论

      本文标题:听到now那边面试在嘲讽最大数相加有这么难吗,手写一个

      本文链接:https://www.haomeiwen.com/subject/doizvftx.html