#include <bits/stdc++.h>
using namespace std;
int main() {
  vector<pair<int, int> > v;
  for (int i = 0; i < 26; i++) {
    v.push_back(make_pair(0, i));
  }
  string str;
  cin >> str;
  long long int k;
  cin >> k;
  for (int i = 0; i < str.size(); i++) {
    v[str[i] - 'a'].first++;
  }
  sort(v.begin(), v.end());
  int i;
  for (i = 0; i < 26; i++) {
    if (k >= v[i].first) {
      k -= v[i].first;
      v[i].first = 0;
    } else if (k != 0 && k < v[i].first) {
      v[i].first -= k;
      k = 0;
    }
    if (k == 0) break;
  }
  unordered_set<int> ss;
  for (int k = i; k < 26; k++) {
    if (v[k].first > 0) ss.insert(v[k].second);
  }
  cout << ss.size() << endl;
  for (int i = 0; i < str.size(); i++) {
    if (ss.find(str[i] - 'a') != ss.end()) {
      cout << str[i];
    }
  }
  return 0;
}
