最新想法:
最多是七位数,而且只有一组输入,完全不用考虑算法复杂度。
直接判断是否为负,并输出符号
巧妙的地方:while循环的下一次再添加逗号。(防止出现,999,991的情况)


婼姐的方法真的很巧妙,能理解,但是不知道如果是自己该怎样想出那种方法。
所以仅仅把婼姐的代码当做学习用,还是得自己来实现啊。
参考了网上很多的博客,真的不好,直接贴代码,思路很差劲的也有。下面这是我觉得最能理解的好方法。
思路分析:
1、a=a+b,当a>1000时,用ans[i++]数组存储a%1000的值,a=a/1000;
2、首先将a带符号输出,若i>0,输出“,”,然后逆向输出”ans[i]’数组,类似地,若i>0,输出“,”。
注意输出的时候0有可能是三个0;(例如1000)


代码有点low,强迫自己学习C++中

#include<iostream>
#include<vector>
using namespace std;
int main() {
    int a,b;
    cin >> a >> b;
    a+=b;
    if(a<0){
        a=-a;
        cout << "-";
    }else if(a==0){
        cout << "0";
        return 0;
    }
    vector<int> ve;
    while(a!=0){
        ve.push_back(a%1000);
        a/=1000;
    }
    for(int i=ve.size()-1;i>=0;i--){
        if(i!=ve.size()-1) printf(",%03d",ve[i]);
        else cout << ve[i];
    }
    return 0;
}