别发AC代码啊,求改,fz就是正常的数字反转,rr就是将string 类型转化为整数类型,思路是将符号前面部分当一个字符串,mc存储符号,若没有就直接s1,否则输出符号,qwq是为了看符号后是否还有数字,如最后一个样例,有就输出b,否则只输出符号
# include<bits/stdc++.h>
using namespace std;
int rr(string s){
int a = 0;
for(int i = 0; i < s.length(); i++)
a = a * 10 + (s[i] - '0');
return a;
}
int fz(int n){
int t, s = 0;
while(n)
t = n % 10, n /= 10, s = s * 10 + t;
return s;
}
int main(){
string s, s1, s2;
char mc = 'p';
cin >> s;
int qwq = 9;
for(int i = 0; i < s.length(); i++) {
if(mc != 'p') {
s2 += s[i];
continue;
}
if(s[i] >= '0' && s[i] <= '9') s1 += s[i];
else mc = s[i];
if(mc != 'p' && (i == (s.length() - 1))) qwq = 5;
}
int a = rr(s1);
cout << fz(a);
if(mc != 'p'){
int b = rr(s2);
cout << mc;
if(qwq != 5) cout << fz(b);
}
return 0;
}