码迷,mamicode.com
首页 > 其他好文 > 详细

A + B problem 高精度

时间:2017-05-07 18:35:41      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:class   div   style   int   ace   push   name   str   namespace   

#include <bits/stdc++.h>
using namespace std;
int main()
{
    string a,b;
    cin>>a>>b;
    int i1 = a.size() - 1;
    int i2 = b.size() - 1;
    string s;
    int carry = 0;
    while (i1 >= 0 || i2 >= 0)
    {
        char ch = carry;
        if (i1 >= 0)
        {
            if (a[i1] < 0 || a[i1] > 9)
                continue;
            ch += a[i1] - 0;
        }
        if (i2 >= 0)
        {
            if (b[i2] < 0 || b[i2] > 9)
                continue;
            ch += b[i2] - 0;
        }
        if (ch >= 10)
        {
            carry = 1;
            ch -= 10;
        }
        else carry = 0;
        s.push_back(ch + 0);
        i1--;
        i2--;
    }
    if (carry) 
    s.push_back(1);
    reverse(s.begin(), s.end());
    return s;
}

 

A + B problem 高精度

标签:class   div   style   int   ace   push   name   str   namespace   

原文地址:http://www.cnblogs.com/masterchd/p/6821384.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!