1001 A+B Format(20 分)

1001 A+B Format(20 分)
Calculate a+b and output the sum in standard format -- that is, the digits must be separated into groups of three by commas (unless there are less than four digits).

Input Specification:
Each input file contains one test case. Each case contains a pair of integers a and b where −10
​6
​​ ≤a,b≤10
​6
​​ . The numbers are separated by a space.

Output Specification:
For each test case, you should output the sum of a and b in one line. The sum must be written in the standard format.

Sample Input:
-1000000 9
Sample Output:
-999,991

隔三位输出一个逗号,我先成字符串,再反转的,没什么坑。

#include <bits/stdc++.h>
using namespace std;

int main()  {
    string str;
    ios::sync_with_stdio(false);
    cin.tie(0),cout.tie(0);
    int a,b,cnt=0,sum;
    cin>>a>>b;
    if (a+b<0)  cout<<'-';
    sum=abs(a+b);
    if (sum==0) {
        cout<<0<<endl;
        return 0;
    }
    for (int i=1;sum!=0;i++)   {
        str+=sum%10+'0';
        sum/=10;
        if (i%3==0&&sum!=0) str+=',';
    }
    reverse(str.begin(),str.end());
    cout<<str<<endl;
    return 0;
}
posted @ 2018-09-03 21:34  CF过2100就买ARCTERYX  阅读(124)  评论(0编辑  收藏  举报