這是一道簡單的貪心問題。只要每次找出正整數中大於第一個數字的數,並刪除即可
#include<iostream>
#include<algorithm>
#include<string.h>
using namespace std;
int main()
{
int m;
int len,t=0;
char ch[100];
char flag;
while(cin>>ch>>m)
{
t=m;
len=strlen(ch);
if(m>=len)
{
cout<<"0"<<endl;
continue;
}
while(m>0)
{
int i=0;
while(i<len&&ch[i]<=ch[i+1])
i++;
for(int j=i; j<len; j++)
ch[j]=ch[j+1];
m--;
}
int l=0;
if(ch[0]=='0')
{
while(ch[l]=='0')
l++;
}
if(l==len-t)
cout<<"0"<<endl;
for(int j=l; j<len-t; j++)
cout<<ch[j];
cout<<endl;
}
return 0;
}