代码如下:
#include <bits/stdc++.h>
using namespace std;
struct node
{
int n;
bool u=1;
};
const int N=1e3+5;
int len,m,ord;
char in;
node num[N],mini;
int main()
{
ios::sync_with_stdio(false);
while((in=getchar())&&('0'<=in)&&(in<='9')) num[++len].n=int(in-'0');
cin >> m;
for(int i=1;i<=len-m;++i)
{
mini.n=INT_MAX;
mini.u=0;
for(int j=max(i,ord);j<=i+m;++j) if(num[j].n<mini.n&&num[j].u) mini.n=num[j].n,ord=j;
cout << mini.n;
num[ord].u=0;
}
return 0;
}
#1 输入是178543
4
输出是13,我的机器跑的就是13。为什么会错呢