4 条题解

  • 1
    @ 2022-09-10 17:13:23
    #include<iostream>
    #include<cmath>
    #include<algorithm>
    using namespace std;
    int a[30001];
    int main()
    {
        long long n,a1=1,c1=1,k=0,s=0,b1=1;
        cin>>n; 
        long long n1=n,ma=0,mi=0;
        while(n1)
        {
            k++,a[k]=n1%10,n1/=10;
            if(a[k]==0)
            s++;    
        }
        sort(a+1,a+k+1);
        //for(int i=s+1;i<=k;i++)
        //a[i]=a1[i-s];
        //sort(a1+1,a1+k-s+1);
        for(int i=k;i>=1;i--)ma+=pow(10,i-1)*a[i];
        
        for(int i=1+s;i<=k;i++)mi+=pow(10,k-i)*a[i];
        cout<<ma-mi<<endl;
        return 0;
    }
    
  • 0
    #include <iostream>
    using namespace std;
    int main()
    {
        int n,i=0,j=0,k=0,t,n1,i1,j1,x,t1,a1[10],c; 
        int a[10];
        cin>>n;
        n1=n; 
        while(n)
        {
            a[i]=n%10;
            n/=10;
            i++;
        }
        k=i;
        for(i=0;i<k;i++)
        {
            for(j=i;j<k;j++)
            {
                if(a[i]<a[j])
                {
                    t=a[i];
                    a[i]=a[j];
                    a[j]=t;
                }
            }
        }
        for(i=0;i<k;i++)
            n=n*10+a[i];
        //cout<<n<<endl;
        
        for(x=0;n1;n1/=10)
           a1[x++]=n1%10; 
        for(i1=0;i1<x-1;i1++)
           for(j1=0;j1<x-1-i1;j1++)
               if(a1[j1]>a1[j1+1])
               {
                    t1=a1[j1];
                    a1[j1]=a1[j1+1];
                    a1[j1+1]=t1;
               }
        for(i1=0;i1<x;i1++)
           n1=n1*10+a1[i1];    
        //cout<<n1<<endl;
        c=n-n1;
        cout<<c<<endl;
        return 0;
    }
    
  • 0

    #include <iostream>
    #include <cstring>
    #include <algorithm>
    using namespace std;

    int jf(int max[],int min[],int n);
    bool cmp(int a,int b);

    int main()
    {
    string x;
    cin>>x;
    int max[x.size()];
    int min[x.size()];
    for(int i=0;i<x.size();i++)
    max[i]=x[i]-'0';
    for(int i=0;i<x.size();i++)
    min[i]=x[i]-'0';
    sort(min,min+x.size());
    sort(max,max+x.size(),cmp);
    cout<<jf(max,min,x.size());
    return 0;
    }

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

    int jf(int max[],int min[],int n)
    {
    int maxz=0,minz=0;
    for(int i=0;i<n;i++)
    maxz=maxz*10+max[i];
    for(int i=0;i<n;i++)
    minz=minz*10+min[i];
    return maxz-minz;
    }

  • 0
    #include<iostream>
    #include<cmath>
    using namespace std;
     
    int main()
    {
        int n=0,a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0;
        bool x(true);
        cin>>n;
        do
        {
            d=g=0;
            e=n;
            do
            {
                c=e%10;
                if(c>d)
                {
                    d=c;
                    a=g;
                }
                ++g;
            }while(e/=10);
            if(x)f=h=g;
            b+=d*pow(10,--f);
            x=false; 
        }while(n-=d*pow(10,a));
        int b1=b;
        a=0;
        do
        {
            a+=(b% 10)*pow(10,--h);
        } while(b/=10);
        cout<<b1-a<<endl;
        return 0;
    }
    
  • 1

信息

难度
5
分类
(无)
标签
递交数
534
已通过
191
通过率
36%
被复制
7
上传者