A permutation *p* of size *n* is an array such that every integer from 1 to *n* occurs exactly once in this array.

Let's call a permutation an almost identity permutation iff there exist at least *n* - *k* indices *i* (1 ≤ *i* ≤ *n*) such that *p*<sub class="lower-index">*i*</sub> = *i*.

Your task is to count the number of almost identity permutations for given numbers *n* and *k*.
The first line contains two integers *n* and *k* (4 ≤ *n* ≤ 1000, 1 ≤ *k* ≤ 4).
none
4 1
1
4 2
7
5 3
31
5 4
76
200 1
1
200 2
19901
200 3
2646701
200 4
584811251
400 1
1
400 2
79801
400 3
21253401
400 4
9477912501
600 1
1
600 2
179701
600 3
71820101
600 4
48187303751
800 1
1
800 2
319601
800 3
170346801
800 4
152620985001
1000 1
1
1000 2
499501
1000 3
332833501
1000 4
373086956251
4 4
24
def fact(n):
    f={}
    if(n in f):
        return f[n]
    elif(n == 0 or n == 1):
        return 1
    else:
        return n*fact(n-1)
import math
D=[0,0,1,2,9]
def ans(n,k):
    
    N = fact(n)
    Ans2 = 0
    for i in range(k,1,-1):
        r= fact(i)
        n_minus_r = fact(n-i)
        temp2 = (N)//(n_minus_r*r)
        Ans2+=temp2*D[i]
    return (1+Ans2) 

n,k=map(int,input().split())
if(k == 1):
    print(1)
else:
    print (ans(n,k))

"""
#to check with bruteforce
from itertools import permutations

p = permutations([i for i in range(1,n+1)])
cnt=0
for i in p :
    local_k =0
    for j in range(1,n+1):
        if(j != i[j-1]):
            local_k +=1
        if(local_k>k):
            break
    else:
        cnt+=1
print(cnt)
"""