2 条题解

  • 0
    @ 2024-1-24 10:30:02

    你们要的python题解来了

    n=rest=minp=cnt=0;
    t=1
    a=[0]
    ans=0
    flag=0;
    num=input()
    k=int(input())
    s=k;
    n=len(num);
    for i in range(1,n+1):
        a.append(ord(num[i-1])-ord('0'));
    rest=n-k;
    while cnt<rest:
        minp=t
        for i in range(t,k+t+1):
            if a[minp]>a[i]:
                minp=i
        if a[minp]>0:
            flag=1
            ans+=1
        if flag:
            print(a[minp],end='')
        k-=minp-t
        t=minp+1
        cnt+=1
    if not flag:
        print(0,end='');
    
    • 0
      @ 2023-3-6 16:46:58

      为什么这题只能用Python解。。。

      只好将C++代码放在这里了

      #include <bits/stdc++.h>
      using namespace std;
      char c[260];
      int main(){
          int len,i,j,s;
          scanf("%s%d",c,&s);
          len=strlen(c);
          while(s--){
              for(i=0;i<=len-2;i++)
                  if(c[i]>c[i+1]){
                      for(j=i;j<=len-2;j++)
                          c[j]=c[j+1];
                      break;
                  }
              len--;
          }
          i=0;
          while(i<=len-1&&c[i]=='0')i++;
          if(i==len)printf("0");
          else
              for(j=i;j<=len-1;j++)
                  printf("%c",c[j]); 
          return 0;
      }
      
    • 1

    信息

    ID
    1490
    时间
    1000ms
    内存
    256MiB
    难度
    7
    标签
    递交数
    128
    已通过
    31
    上传者