The World is a Theatre CodeForces - 131C (排列组合模板)

题意:剧团里有 n 个男生和 m 个女生。 现在要排一部新的话剧,需要 t个人,那么将要从剧团里选出t个人,已知选出的人里面至少有4个男生和1个女生。请问一共有多少种不同的选法。

题解:直接暴力排列组合一下就行了,高中数学。

记录一下排列组合公式:

排列:

A(n,m)=n×(bain-1)...(n-m+1)=n!du/(n-m)!(n为下标,m为上标,以下同)

组合zhi:

C(n,m)=P(n,m)/P(m,m) =n!/m!(n-m)!

AC代码:

#include <iostream>
#include <cstring>
#include <string>
#include <map>
#include <cstdio>
#include <algorithm>
#define int long long
using namespace std;
const int maxn=1e6+5;
int c(int n,int m){
	int ans=1;
	for(int i=1;i<=m;i++){
	    ans=ans*(n-i+1);
		ans=ans/i;	
	}
	return ans;
}
main(){
	int n,m,t;
	cin>>n>>m>>t;
	int ans=0;
	for(int i=4;i<t;i++)ans+=c(n,i)*c(m,t-i);
	cout<<ans<<endl;
}

猜你喜欢

转载自blog.csdn.net/Alanrookie/article/details/107964477