P2638 安全系统
作者:互联网
隔板法:n个盒子放k个小球。用n-1个隔板隔开k个小球。如果要求每个盒子中至少有一个小球则方案数为C(k-1,n-1),如果盒子里可以没有小球则为C(k+n-1,n-1)。
#include<iostream> using namespace std; typedef unsigned long long LL; LL n, a, b, ans; LL C(LL n, LL m) { LL res = 1; for (LL i = 1; i <= m; i++) res = res * (n - m + i) / i; return res; } int main(void) { cin >> n >> a >> b; for (LL i = 0; i <= a; i++) { for (LL j = 0; j <= b; j++) { ans += C(i + n - 1, n - 1) * C(j + n - 1, n - 1); } } cout << ans; return 0; }
标签:隔板,盒子,传送门,系统,LL,小球,long,安全,P2638 来源: https://www.cnblogs.com/xqk0225/p/16079195.html