AtCoder Beginner Contest 156 D - Bouquet 题意:一共有n种不同的花,问将x种花组成一束花的方案数,1<=x<=n,x!=a,x!=b。 思路:补集思想,总共有 ∑ i = 1 n \sum_{i=1}^n ∑i=1n C n i C_n^i Cni= 2 n − 1 2^n-1 2n−1,种方案,不合情况的有 C n a C_n^a Cna与 C n b C_n^b Cnb减去即是答案。 E - Roaming 题意:有n个房间,每个房间初始有一个人,有这样一种操作,可以将房间i的一个人移动到房间j,问k次这样的操作后的房间人数情况的方案数。 思路:我们可以枚举最后房间为空的情况,假设i个房间为空,将这n个人分配到n-i个房间用隔板法,n个人有n-1个隔板从中选取n-i-1个,最后答案为 ∑ i = 1 m i n ( k , n − 1 ) \sum_{i=1}^{min(k,n-1)} ∑i=1min(k,n−1) C n i ∗ C n − 1 i C_n^i*C_{n-1}^i Cni∗Cn−1i F - Modularness