hdoj-3787- A+B

Description
给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号”,”隔开。
现在请计算A+B的结果,并以正常形式输出。

Input
输入包含多组数据数据,每组数据占一行,由两个整数A和B组成(-10^9 < A,B < 10^9)。

Output
请计算A+B的结果,并以正常形式输出,每组数据占一行。

Sample Input

     -234,567,890 123,456,789

1,234 2,345,678

Sample Output

     -111111101

2346912
直接模拟

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
long long a,b;  
char s1[20],s2[20];  
int len1,len2;  

int main()  
    {  
    int i;  
    while(~scanf("%s%s",s1,s2))  
    {  
        len1 = strlen(s1);  
        len2 = strlen(s2);  
        a = b = 0;  
        for(i = 0; i<len1;i++)  
        {  
            if(s1[i]>='0' && s1[i]<='9')  
            {  
                a = a*10+s1[i]-'0';  
            }  
        }  
        if(s1[0] == '-')  
            a = -a;  
        for(i=0;i<len2;i++)  
        {  
            if(s2[i]>='0' && s2[i]<='9')  
                b = b*10+s2[i]-'0';  
        }  
        if(s2[0] == '-')  
            b = -b;  
        printf("%I64d\n",a+b);  
    }  

    return 0;  
}  

你可能感兴趣的:(hdoj-3787- A+B)