题目描述
给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号,隔开。
现在请计算A+B的结果,并以正常形式输出。输入
输入包含多组数据,每组数据占一行,由两个整数A和B组成(-1e9 < A,B < 1e9)。
输出
请计算A+B的结果,并以正常形式输出,每组数据占一行。
样例输入
-234,567,890 123,456,789 1,234 2,345,678
样例输出
-111111101 2346912
AC代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
string a,b;
while(cin>>a>>b)
{
string str = "" , str1 = "";
for(int i = 0;i < a.length() ;i++) if(a[i] !=',') str.append(a,i,1);
for(int j = 0;j < b.length() ;j++) if(b[j] !=',') str1.append(b,j,1);
stringstream ss , ss1;
ll flag,flag1;
ss<<str;
ss1<<str1;
ss>>flag;
ss1>>flag1;
cout<< flag + flag1<<endl;
}
return 0;
}
思路总结:先在每组输入中定义两个空字符串,然后在每组输入中把逗号跳过然后拼接到这两个空字符串中,最后把字符串转化为整型进行算术运算。其中的stringsteam可以吞下任何类型,然后根据实际需要吐出我们所需的类型。
其中用到的函数用法如下链接: