#include <bits/stdc++.h>
int main() {
  int K, keta1, keta2 = -1, keta3 = -1;
  char N[110];
  int N1 = 0, N2 = 0, N3 = 0;
  int a, b, c;
  int count = 0;
  scanf("%s", N);
  scanf("%d", &K);
  keta1 = strlen(N);
  for (int i = 0; i < keta1; i++) {
    if (N[i] != '0') {
      if (N1 == 0)
        N1 = N[i] - '0';
      else if (N2 == 0) {
        N2 = N[i] - '0';
        keta2 = keta1 - i;
      } else if (N3 == 0) {
        N3 = N[i] - '0';
        keta3 = keta1 - i;
        break;
      }
    }
  }
  if (K == 1) {
    count = N1 + (keta1 - 1) * 9;
  } else if (K == 2) {
    for (int i = 2; i <= keta1; i++) {
      if (i == keta1)
        a = N1;
      else
        a = 9;
      for (int j = 1; j < i; j++) {
        if (j == keta2)
          b = N2;
        else if (i == keta1 && j > keta2)
          b = 0;
        else
          b = 9;
        count += (a - 1) * 9 + b;
      }
    }
  } else if (K == 3) {
    for (int i = 3; i <= keta1; i++) {
      if (i == keta1)
        a = N1;
      else
        a = 9;
      for (int j = 2; j < i; j++) {
        if (j == keta2)
          b = N2;
        else if (i == keta1 && j > keta2)
          b = 0;
        else
          b = 9;
        for (int k = 1; k < j; k++) {
          if (k == keta3)
            c = N3;
          else if (i == keta1 && j == keta2 && k > keta3)
            c = 0;
          else
            c = 9;
          if (b == 0)
            count += (a - 1) * 81;
          else
            count += (a - 1) * 81 + (b - 1) * 9 + c;
        }
      }
    }
  }
  printf("%d", count);
  return 0;
}
