时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:13208
解决:5518
-
题目描述:
-
给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号","隔开。
现在请计算A+B的结果,并以正常形式输出。
-
输入:
-
输入包含多组数据数据,每组数据占一行,由两个整数A和B组成(-10^9 < A,B < 10^9)。
-
输出:
-
请计算A+B的结果,并以正常形式输出,每组数据占一行。
-
样例输入:
-
-234,567,890 123,456,789 1,234 2,345,678
-
样例输出:
-
-111111101 2346912
-
由于给出了输入条件(-10^9 < A,B < 10^9),先考虑是否可以直接相加,因为本题没有越界风险,即只需要把输入的变成整数,之后直接相加即可。
-
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <math.h> using namespace std; int reverse(string a) { int x=0; if(a[0]=='-') { for(int i=1;i<a.length();i++) if(a[i]>='0'&&a[i]<='9') x = x*10+a[i]-'0'; x = -x; } else for(int i=0;i<a.length();i++) if(a[i]>='0'&&a[i]<='9') x = x*10+a[i]-'0'; return x; } int main() { string a,b; while(cin>>a>>b) { cout<<reverse(a)+reverse(b)<<endl; } return 0; }