#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int helper(int N) {
  int ans = 0;
  if (N < 100) {
    ans += ((N / 10) - 1) * 9 + (N % 10);
  } else {
    ans += (N / 100) * helper(99) + helper(N % 100);
  }
  return ans;
}
int nCr(int n, int r) {
  assert(!(n < r));
  assert(!(n < 0 || r < 0));
  int ans = 1;
  for (int i = 1; i <= r; i++) {
    ans *= n - i + 1;
    ans /= i;
  }
  return ans;
}
int main() {
  int dp[105][4][2];
  string s;
  cin >> s;
  int n = s.size();
  int K;
  cin >> K;
  dp[0][0][0] = 1;
  for (int i = 0; i < (n); ++i)
    for (int j = 0; j < (4); ++j)
      for (int k = 0; k < (2); ++k) {
        int nd = s[i] - '0';
        for (int d = 0; d < (10); ++d) {
          int ni = i + 1, nj = j, nk = k;
          if (d != 0) nj++;
          if (nj > K) continue;
          if (k == 0) {
            if (d > nd) continue;
            if (d < nd) nk = 1;
          }
          dp[ni][nj][nk] += dp[i][j][k];
        }
      }
  int ans = dp[n][K][0] + dp[n][K][1];
  cout << ans << endl;
  return 0;
}
