1434 - 集合的划分

通过次数

2

提交次数

4

时间限制 : 1 秒
内存限制 : 64 MB

设S是一个具有n个元素的集合,S={a_1,a_2,…,a_n},现将S划分成k个满足下列条件的子集合S_1,S_2,…,S_k,且满足:

(1)S_i≠∅(空集);

(2)S_i∩S_j=∅(1≤i,j≤k,i≠j)

(3)S_1∪S_2∪S_3∪…∪S_k=S

则称是S_1,S_2,…,S_k是集合S的一个划分。它相当于把S集合中的n个元素a_1,a_2,…,a_n放入k个无标号的盒子中,使得没有一个盒子为空。

编程,计算划分数S(n,k),0<k≤n<30。

输入

输入一行两个数,表示n和k。

输出

输出一行一个数,表示S(n,k)的值。

样例

输入

23 7

输出

4382641999117305

来源

课课通