题库练习 集合的划分

A71920 | 集合的划分

来源编程题
时间限制1s
内存限制512MB
通过 / 提交0/0

题目描述

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

  • 1S_i≠ \emptyset
  • 2S_i∩S_j=∅ (1 \le i,j \le k,i≠j)
  • 3S_1∪S_2∪S_3∪ \dots ∪S_k=S

则称 S_1,S_2,\dots,S_k是集合 S 的一个划分。

它相当于把 S 集合中的 n 个元素 a_1,a_2,\dots,a_n 放入 k 个(0 \lt k \le n \lt 30)无标号的盒子中,使得没有一个盒子为空。

请你确定 n 个元素 a_1,a_2,\dots,a_n 放入 k 个无标号盒子中去的划分数 S(n,k)

输入格式

给出 nk

输出格式

n 个元素 a_1,a_2,\dots,a_n 放入 k 个无标号盒子中去的划分数 S(n,k)

输入输出样例

输入 #1
10 6
输出 #1
22827
C++ 编辑器
输入
输出