Codeforces Beta Round #95 (Div. 2)

来源:互联网 发布:淘宝子账号怎么注册 编辑:程序博客网 时间:2024/05/17 15:36
//这是一道组合题目,比赛的时候我也是这样想的,可我是用两个函数分开来算的,//这样导致的结果就是直接爆掉,然后WA,后来问别人才知道,把他们用一个函数,//而且尽量用sum1+=C(n,i)*C(m,t-i)这样就不会爆掉了,而且这里出现了一个奇葩的事,//就是不能sum1*=C(n,i)*C(m,t-i),至于为什么我也不知道!#include <iostream>#include <cstdio>#include <cstring>using namespace std;long long n,m,t;long long  C(long long  a,long long  b){    long long sum2=1;    for(long long  i=1; i<=b; i++)    {        sum2=sum2*(a-i+1)/i;    }    return sum2;}int main(){    while(cin>>n>>m>>t)    {        long long sum1;        sum1=0;        for(long long  i=4; i<t; i++)        {           sum1+=C(n,i)*C(m,t-i);        }        cout<<sum1<<endl;    }    return 0;}#include <iostream>#include <cstdio>#include <cstring>using namespace std;long long n,m,t;long long  C(long long  a,long long  b){    long long sum2=1;    for(long long  i=1; i<=b; i++)    {       #include <iostream>#include <cstdio>#include <cstring>using namespace std;long long n,m,t;long long  C(long long  a,long long  b){    long long sum2=1;    for(long long  i=1; i<=b; i++)    {        sum2=sum2*(a-i+1)/i;    }    return sum2;}int main(){    while(cin>>n>>m>>t)    {        long long sum1;        sum1=0;        for(long long  i=4; i<t; i++)        {           sum1+=C(n,i)*C(m,t-i);        }        cout<<sum1<<endl;    }    return 0;}    }    return sum2;}int main(){    while(cin>>n>>m>>t)    {        long long sum1;        sum1=0;        for(long long  i=4; i<t; i++)        {           sum1+=C(n,i)*C(m,t-i);        }        cout<<sum1<<endl;    }    return 0;}

原创粉丝点击