1 条题解

  • 0
    @ 2021-01-26 19:57:15
    /*
        这道题找一个规律 枚举应该也能做出来但是比较麻烦
        从高位到低位找,如果有某个位上的数比右边的数小,就删去该数(这样能使高位变得更大
        如果没有这样的数,删去最后一个数(此时数字呈降序排列
    */
    #include<iostream>
    #include<cstring>
    using namespace std;
    void DY(char a[],int a_long,int b)
    {
        for(int i=0;i<a_long;i++)
        {
            if(i!=b)
                cout<<a[i];
        }
    }//一个用来打印的函数
    char a[100000];//用字符串来做 longlong长度不够
    int main()
    {
        cin>>a;
        int xvx=strlen(a),az=-1,flag=0;
        for(int i=0;i<xvx-1;i++)
        {
            if(a[i]<a[i+1]&&flag==0)
            {
                flag=1;
                az=i;
            }
        }
        if(flag==0)
            DY(a,xvx,xvx-1);
        else
            DY(a,xvx,az);
        
        return 0;
    }
    
  • 1

信息

难度
7
分类
(无)
标签
递交数
925
已通过
144
通过率
16%
被复制
11
上传者