求助30分
查看原帖
求助30分
754119
tu_huang_di楼主2024/7/12 15:27
#include<iostream>
using namespace std;
long long n,a[10],cnt,l;
void zws(int x)
{
    int b[10],k=x,j=4;
    while(k>0)
    {
        j--;
        b[j]=k%10;
        k/=10;
    }
    if(b[1]>b[2])
    {
        if(b[2]>b[3])
        {
            a[1]=b[1];
            a[2]=b[2];
            a[3]=b[3];
        }
        else
        {
            if(b[3]>b[1])
            {
                a[1]=b[3];
                a[2]=b[1];
                a[3]=b[2];
            }
            else
            {
                a[1]=b[1];
                a[2]=b[3];
                a[3]=b[2];
            }
        }
    }
    else
    {
        if(b[2]<b[3])
        {
            a[1]=b[3];
            a[2]=b[2];
            a[3]=b[1];
        }
        else
        {
            if(b[3]>b[1])
            {
                a[1]=b[2];
                a[2]=b[3];
                a[3]=b[1];
            }
            else
            {
                a[1]=b[2];
                a[2]=b[1];
                a[3]=b[3];
            }
        }
    }
}
int main()
{
    cin>>n;
    l=n;
    while(l!=495)
    {
        cnt++;
        zws(l);
        if(a[3]!=0)
        {
            l=a[1]*100+a[2]*10+a[3]-(a[3]*100+a[2]*10+a[1]);
        }
        else
        {
            l=a[1]*100+a[2]*10+a[3]-(a[2]*100+a[1]);
        }
    }
    cout<<cnt;
    return 0;
}
2024/7/12 15:27
加载中...