问题描述
时间限制:1秒
空间限制:32768K
为了得到一个数的”相反数”,我们将这个数的数字顺序颠倒,然后再加上原先的数得到”相反数”。例如,为了得到1325的”相反数”,首先我们将该数的数字顺序颠倒,我们得到5231,之后再加上原先的数,我们得到5231+1325=6556.如果颠倒之后的数字有前缀零,前缀零将会被忽略。例如n = 100, 颠倒之后是1.
输入描述:
输入包括一个整数n,(1 ≤ n ≤ 10^5)
输出描述:
输出一个整数,表示n的相反数
C代码
//字符串
#include<bits/stdc++.h>//包含所有头文件
using namespace std;
typedef long long LL;
const double PI=acos(-1.0);
int ans(string s){
int a=0;
for(int i=0,j=0;i<s.length();i++,j++){
int x=1;
a=a*10+(s[i]-'0');
}
return a;
}
int main(){
// freopen("F://inp.txt","r",stdin);
// freopen("F://outp.txt","w",stdout);
string s;
while(cin>>s){
string s1(s.rbegin(),s.rend());
cout<<ans(s)+ans(s1);
}
return 0;
}