看了一眼,好像没有能解决我的疑惑的讨论,希望奆能帮我看下
#include<iostream>
#include<cstdio>
#include<string.h>
using namespace std;
string s;
int a[300];
bool ok(int i)
{
int l=i-1,r=i+1;
while(a[l]==-1) l--;
while(a[r]==-1) r++;
if(a[l]<a[i]&&a[r]<a[i]) return true;
return false;
}
int main()
{
int len,i,cnt=0,n,ccnt=1;
cin>>s;
scanf("%d",&n);
len=s.length();
for(i=0;i<len;i++) a[i+1]=s[i]-'0';
for(i=1;cnt<n&&i<len;i++)
if(ok(i)) a[i]=-1,cnt++,i=0;
for(i=1;i<=max((n-cnt),0);i++) len--;
for(ccnt=1;a[ccnt]==0||a[ccnt]==-1;ccnt++);
for(i=min(ccnt,len-1);i<=len;i++) if(a[i]!=-1) printf("%d",a[i]);
}
一句话,我太蒻了