题目描述
已知,一个任意的四位整数,将数字重新组合成一个最大的数和最小的数相减,重复这个过程,最多七步,必得6174。即7641-1467=6174。将永远出不来。求证:所有四位数数字(全相同的除外)均能得到6174。
输入输出格式
输入格式:
一个任意的四位整数。
输出格式:
输出掉进黑洞的步数。
输入样例#1:
1342
输出样例#1:
3
#include<bits/stdc++.h>
using namespace std;
int n,a[4],x,y,ans;
int main(){
cin>>n;
while(n-6174!=0){
for(int i=3;i>=0;i--){
a[i]=n%10;
n/=10;
}
sort(a,a+4);
x=a[0]+10*a[1]+100*a[2]+1000*a[3];
y=a[3]+10*a[2]+100*a[1]+1000*a[0];
n=x-y;
ans++;
}
cout<<ans;
}