问题B:A+B
题目描述
给定两个整数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
思路
简单模拟,把输入的字符串转化为两个long long int类型,相加得出结果。
#include<cstdio>
#include<cstring>
long long int stoi(char s[]) {
int len = strlen(s);
long long int v = 0;
for(int i = 0; i < len; i++) {
if(s[i] != '-' && s[i] != ',') {
v *= 10;
v += (s[i] - 48);
}
}
if(s[0] == '-') v = -v;
return v;
}
int main() {
char a[20], b[20];
long long int sum;
while(scanf("%s%s", a, b) != EOF) {
sum = stoi(a) + stoi(b);
printf("%lld\n", sum);
}
return 0;
}
作者:kindleheart
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。