from operator import mul
from functools import reduce


nCr = {}
def cmb(n, r):
  if r == 0 or r == n: return 1
  if r == 1: return n
  if (n,r) in nCr: return nCr[(n,r)]
  nCr[(n,r)] = cmb(n-1,r) + cmb(n-1,r-1)
  return nCr[(n,r)]


def main():
  N = int(input())
  K = int(input())
  
  sn = str(N)
  order = len(sn)
    
  result = 0
  for i, c in enumerate(sn):
    n = order - i - 1  # i+1以降の桁数
    k = K - i  # 手前にi個の0以外の数字がある。
    
    if n == 0 and k == 1:
      result += int(c)
      break
    
    # 左からi桁目を0とする場合
    if n > 0 and k >= 0 and k <= n:
      result += cmb(n, k) * 9 ** k
    
    # 左からi桁目を0以外とする場合
    k -= 1
    if int(c) > 1 and n > 0 and k >= 0 and k <= n:
      result += (int(c) - 1) * cmb(n, k) * 9 ** k

  print(result)

main()
