1019 pat 无法识别itoa,2008可以,但是做出来了,这个是int转string,和string转int

时间:2022-03-28 14:15:34

pat 无法识别itoa,2008可以,但是做出来了,这个是int转string,和string转int

#include <stdio.h>

#include <iostream>
#include <string.h>
#include <string>
#include <sstream>
#include <iomanip>
#include <cmath>
#include<limits>
#include <iostream>
#include <algorithm>
using namespace std;


//int cmp (int a,int b){
// if(a>b) return a;
//
//}


char cmp1 (char a,char b){
return a>b;

}
//template <typename T>  
//struct cmp2  <string>
//{  
//    bool operator()(const T &x, const T &y)  
//    {  
//        return y>x;  
//    }  
//};  
//  
string tostring(int a)
{
//int i = 456;
char b[10];
string str;
itoa(a, b, 10);
str = b;
return str;
}
//  
int main()
{
string a,b;
cin>>a;
int fa=0;
b=a;
if(a[0]==a[1]&&a[1]==a[2]&&a[2]==a[3]&&a[3]==a[0]) cout<<b<<'-'<<a<<'='<<0000<<endl;
else{
while(fa!=6174){
b=a;
sort(b.begin(),b.end(),cmp1);
sort(a.begin(),a.end());
int tob=atoi(b.c_str());
int toa=atoi(a.c_str());
fa=tob-toa;

cout<<b<<'-'<<a<<'='<<tob-toa<<endl;
a=tostring(fa);
}
}


return 0;
}