20分蒟蒻求助,求大佬帮忙看下怎么改进?用的是c(a,b)
  • 板块P1358 扑克牌
  • 楼主daonan
  • 当前回复3
  • 已保存回复3
  • 发布时间2022/1/15 21:06
  • 上次更新2023/10/28 12:16:53
查看原帖
20分蒟蒻求助,求大佬帮忙看下怎么改进?用的是c(a,b)
547513
daonan楼主2022/1/15 21:06
#include<bits/stdc++.h>
using namespace std;
int main() 
{
	int n,m;
	long long int sum=1;
	cin>>n>>m;
	int a[m];
	for (int i=0;i<=m-1;i++)
	cin>>a[i];
	for(int i=0;i<=m-1;i++)//special judge
	{
		if(a[i]>n)
		{
		cout<<0;
		return 0;
		}
	}
	for(int i=0;i<=n-1&&n>=a[i];i++)
	{
		for(int t=n;t>=n-a[i]+1;t--)
			{
				sum*=t;  //从n乘到n-a[i]+1
			}
		for(int j=1;j<=a[i];j++)
		    {
		    	sum/=j;	 //除以a[i]! 
		    }
		n-=a[i];  //拿完减掉 
	}
   sum%=10007;
   cout<<sum;
   return 0;
}
2022/1/15 21:06
加载中...