#include <bits/stdc++.h>
using namespace std;
char ch[22];
int k, len;
int getmax(int pos) {
  int ma = -1, pp = -1;
  for (int i = pos; i < len && i <= pos + k; i++) {
    if (ma < ch[i]) {
      ma = ch[i];
      pp = i;
    }
  }
  return pp;
}
int main() {
  cin >> ch >> k;
  len = strlen(ch);
  for (int i = 0; i < len && k > 0; i++) {
    int p = getmax(i);
    if (p < 0) break;
    k -= (p - i);
    for (int j = p; j > i; j--) swap(ch[j - 1], ch[j]);
  }
  cout << ch << endl;
  return 0;
}
