题目: Problem - 3183 (dingbacode.com)
#include<bits/stdc++.h>
using namespace std;
#define MXN 1000
int a[MXN],n;
char b[MXN];
int main(){while(memset(b,0,sizeof b),scanf("%s %d",b,&n)==2){memset(a,0,sizeof a);for(int i=1;b[i]!='\0'&&n>0;i++){for(int j=i-1;j>=0&&n>0;j--){if(a[j]){continue;}if(b[j]>b[i]){a[j]=1;n--;}else break;}}for(int i=MXN-1;i>=0&&n>0;i--){if(a[i]==1||b[i]=='\0'){continue;}a[i]=1;n--;}int p = 0; while(b[p]=='0'||a[p]) p++; if(b[p]=='\0') printf("0"); else{while(b[p]!='\0'){if(!a[p]) printf("%c",b[p]);p++;}}printf("\n");}return 0;
}