#include <bits/stdc++.h>
using namespace std;
void YES(bool flag) { cout << (flag ? "YES" : "NO") << endl; }
void Yes(bool flag) { cout << (flag ? "Yes" : "No") << endl; }
void yes(bool flag) { cout << (flag ? "yes" : "no") << endl; }
const int INF = 1e7;
const long long MOD = 1e9 + 7;
string n;
int k;
long long ans;
int main() {
  cin >> n >> k;
  if (k == 1) {
    ans = (n.size() - 1) * 9 + (n[0] - '0');
  } else if (k == 2) {
    ans += (n.size() - 1) * 9 * (n.size() - 2) * 9 / 2 +
           (n[0] - '0' - 1) * (n.size() - 1) * 9 + 1 * (n[1] - '0') +
           1 * min(n[1] - '0', 1) * (n.size() - 2) * 9;
  } else {
    ans = (n.size() - 1) * 9 * (n.size() - 2) * 9 * (n.size() - 3) * 9 / 6 +
          (n[0] - '0' - 1) * (n.size() - 1) * 9 * (n.size() - 2) * 9 / 2 +
          1 * max(n[1] - '0' - 1, 0) * (n.size() - 2) * 9 +
          1 * min(n[1] - '0', 1) * (n.size() - 2) * 9 * (n.size() - 3) * 9 / 2 +
          1 * 1 * (n[2] - '0') +
          1 * 1 * min(n[2] - '0', 1) * (n.size() - 3) * 9;
  }
  cout << ans << endl;
  return 0;
}
