2 solutions

  • 0
    @ 2026-2-4 14:26:50
    #include<bits/stdc++.h>
    using namespace std;
    int min_int(int a)
    {
        int c[3];
        c[0]=a/100%10;
        c[1]=a/10%10;
        c[2]=a%10;
        sort(c,c+3);
        return c[0]*100+c[1]*10+c[2];
    }
    int max_int(int a)
    {
        int c[3];
        c[0]=a/100%10;
        c[1]=a/10%10;
        c[2]=a%10;
        sort(c,c+3);
        return c[2]*100+c[1]*10+c[0];
    }
    int main()
    {
        int a=0;
        int b;
        cin>>b;
        while(1)
        {
            if(b==495)break;
            b=max_int(b)-min_int(b);
            a++;
        }
        cout<<a;
    }
    
    • -1
      @ 2025-11-27 11:55:05

      C++ :

      #include <iostream>
      using namespace std;
      int main() {
      int n = 0;
      cin >> n;
       for (int t = 0; ; t++) {
       if (n == 495) {
       cout << t << endl;
       break;
       }
       int m0 = n % 10, m1 = n / 10 % 10, m2 = n / 100;
       int tmax = 0, tmin = 0;
       if (m0 >= m1 && m1 >= m2) {
       tmax = m0 * 100 + m1 * 10 + m2;
       tmin = m2 * 100 + m1 * 10 + m0;
       } else if (m0 >= m2 && m2 >= m1) {
       tmax = m0 * 100 + m2 * 10 + m1;
       tmin = m1 * 100 + m2 * 10 + m0;
       } else if (m1 >= m0 && m0 >= m2) {
       tmax = m1 * 100 + m0 * 10 + m2;
       tmin = m2 * 100 + m0 * 10 + m1;
       } else if (m1 >= m2 && m2 >= m0) {
       tmax = m1 * 100 + m2 * 10 + m0;
       tmin = m0 * 100 + m2 * 10 + m1;
       } else if (m2 >= m0 && m0 >= m1) {
       tmax = m2 * 100 + m0 * 10 + m1;
       tmin = m1 * 100 + m0 * 10 + m2;
       } else { // m2 >= m1 && m1 >= m0
       tmax = m2 * 100 + m1 * 10 + m0;
       tmin = m0 * 100 + m1 * 10 + m2;
       }
       n = tmax - tmin;
       }
      return 0;
      }
      
      • 1

      Information

      ID
      41
      Time
      1000ms
      Memory
      128MiB
      Difficulty
      6
      Tags
      # Submissions
      20
      Accepted
      10
      Uploaded By