美文网首页
PAT甲级(1001:A+B Format)

PAT甲级(1001:A+B Format)

作者: 冰果_4988 | 来源:发表于2019-05-18 23:43 被阅读0次

计算a+b并以标准格式输出和——也就是说,数字必须用逗号分隔成三组(除非数字个数少于四位)。

输入规格:

每个输入文件包含一个测试用例。每种情况都包含一对整数a和b,-1000000 <= a, b <= 1000000。其中这些数字用空格隔开。

输出规范:

对于每个测试用例,您应该在一行中输出a和b的和。总和必须用标准格式写。

样例输入:

-1000000 9

样例输出:

-999,991

题解:

把数字a+b的和转化成字符串,如果第一位是负号先跳过,只要当前位的下标i满足(i + 1) % 3等于字符串长度 % 3并且i不是最后一位,就在逐位输出的时候在该位输出后的后面加上一个逗号。

#include <bits/stdc++.h>

using namespace std;

int main() {

    int a, b;

    cin>> a>> b;

    string s= to_string(a+ b);

    int len= s.length();

    for (int i= 0; i< len; ++i) {

        cout<< s[i];

        if (s[i] == '-')continue;

        if ((i+ 1) % 3 == len% 3 && i!= len- 1)

            cout<< ",";

    }

    return 0;

}

相关文章

网友评论

      本文标题:PAT甲级(1001:A+B Format)

      本文链接:https://www.haomeiwen.com/subject/lsoxzqtx.html