天天看點

hdu 2082找單詞 母函數入門模闆

//hdu 2082

#include<iostream>

#include<cmath>

#include<cstring>

#include<cstdio>

#include<algorithm>

#include<string>

#include<stack>

#include<queue>

#include<map>

#define PI acos(-1.0)

typedef long long LL;

const int MAX=0xfffffff;

using namespace std;

int main( )

{

    //freopen("1.txt","r",stdin);

    int t;

    scanf("%d",&t);

    while(t--)

    {

        int a[60],b[60];

        memset(a,0,sizeof(a));

        memset(b,0,sizeof(b));

        a[0]=1;

        for(int i=1;i<=26;i++)

        {

            int num;

            scanf("%d",&num);

            if(num==0)  continue;

            for(int j=0;j<=50;j++)

                for(int k=0;k<=num&&k*i+j<=50;k++)

                    b[k*i+j]+=a[j];

            for(int j=0;j<=50;j++)

            {

                a[j]=b[j];

                b[j]=0;

            }

        }

        int ans=0;

        for(int i=1;i<=50;i++)

            ans+=a[i];

        printf("%d\n",ans);

    }

    return 0;

}