1001 A+B Format (20分)

题目翻译:

计算两个数a和b的和,并以标准格式(从低位到高位每三个一位,中间以','隔开)输出,a和b的范围为:

解题思路:

首先:判断和的正负,若为负,则输出-;

接着:对头部(可能不足三的部分)进行处理;

最后:依次输出剩余部分。

代码:

#include
using namespace std;

int main()
{
	int a, b;
	cin >> a >> b;
	if (a + b < 0)cout << "-";
	string s = to_string(abs(a + b));
	int i = s.size() % 3 == 0 ? 3 : s.size() % 3;
	cout << s.substr(0, i);
	for (;i < s.size();i += 3)
		cout << "," << s.substr(i, 3);
}

坑点:

你可能感兴趣的:(PAT题解,算法,c++,数据结构)