//身为大一菜鸟的我曾错了n次的题
//算法是从头开始扫过去,若当前扫到的数比下一个大,则删,删后回退到上一个未被删的数继续,直到删完指定数或扫到最后一个元素,若删不够指定的数,则此刻数组肯定是递增的,所以只要从后向前删至足够数量便行了
#include
#include
using namespace std;
char str[250];
int a[250];
int b[250];
int main(){
int i, len, k, l, r, c, t, f;
do{
f = 0;
cin >> str;
if (str[0] == '0')
break;
len = strlen(str);
cin >> k;
for (i = 0; i= k)
break;
if (str[r] - str[l] >= 0){
l = a[l];
r = a[r];
}
else{
c++;
if (b[l] != -1){
a[b[l]] = r;
b[r] = b[l];
l = b[l];
}
else{
f = 1;
b[r] = -1;
a[0] = r;
l = a[l];
r = a[r];
}
}
}
t = r - 1;
for (; c