题目
思路
把数字转化为字符串,倒序输出
大神的都是数字直接转为字符串,学到了
代码
第一个测试点不过,有会的可以帮我看看吗,万分感谢
现在做pat不过一个测试点我也能慢慢接受了,呜呜呜
我的
#include <iostream>
#include <vector>
using namespace std;
int main(){
long a,b;
vector<int> vec;
cin >> a >> b;
a = a + b;
if(a == 0) cout << 0;
if(a<0) {
a = -a;
cout << '-';
}
while(a > 0){
vec.push_back(a % 10);
a = a / 10;
}
int yushu = vec.size() % 3;
int index = vec.size() - 1;
for(int i=0; i<yushu; ++i) {
cout << vec[index];
index--;
}
if(vec.size() > 3)cout << ',';
for(int i=0; i< vec.size()/3; ++i){
for(int j=0; j<3; ++j){
cout << vec[index];
index --;
}
if(index > 0) cout << ',';
}
return 0;
}
大神的
写的真少!!!
#include <iostream>
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;
//后面每个数对3取余,都等于多出来的数据就可以
if ((i + 1) % 3 == len % 3 && i != len - 1) cout << ",";
}
return 0;
}