算是收获了奇怪的手读么emmm
Time Limit: 1000 MS
Memory Limit: 32768 K
Problem 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
题目本身简单易懂,主要在于这种有逗号的怎么去处理,把两个数当成string来处理,用一下精良版?手读来读进来过滤逗号
代码如下:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
using namespace std;
string a,b;
int read(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()
{
while(cin>>a>>b)
cout<<read(a)+read(b)<<endl;
return 0;
}

本篇博客介绍了一种解决特殊格式数字相加的方法。针对数字每三位以逗号隔开的形式,通过字符串处理去除逗号并转换为整数进行计算。最终实现了多个此类格式的数字相加的功能。
635

被折叠的 条评论
为什么被折叠?



