母函数的一些简单想法(HDU2110)

Posted newstartcy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了母函数的一些简单想法(HDU2110)相关的知识,希望对你有一定的参考价值。

// 母函数解决的问题
// n 种物品,每个有一个wi,组合成total价值有多少种组合方案
// 将组合问题转换为 幂级数上的相乘问题(important) (Orz)
// #include<iostream>
// #include<cstdio>
// #include<cstring>
// using namespace std;
// int n,a[105],b[105],m,s[10010],t[10010];
// int main()
// 
//     while(~scanf("%d",&n),n)
//     
//         m=0;
//         for(int i=0; i<n; i++)
//         
//             scanf("%d%d",&a[i],&b[i]);
//             m+=(a[i]*b[i]);
//         
//         if(m%3!=0)
//         
//             printf("sorry\n");
//             continue;
//         
//         memset(s,0,sizeof(s));
//         memset(t,0,sizeof(t));
//         m/=3;
//         for(int i=0; i<=b[0]&&i*a[0]<=m; i++)
//         
//             s[i*a[0]]=1;
//         
//         for(int i=1; i<n; i++)
//         
//             for(int j=0; j<=m; j++)
//                 for(int k=0; k<=b[i]&&k*a[i]+j<=m; k++)
//                 
//                     t[k*a[i]+j]+=s[j];
//                     t[k*a[i]+j]%=10000;
//                 
//                 for(int j=0; j<=m; j++)
//                 
//                     s[j]=t[j];
//                     t[j]=0;
//                 
//         
//         if(s[m]!=0)
//         
//             printf("%d\n",s[m]);
//         
//         else printf("sorry\n");
//     
//     return 0;
// 

 

以上是关于母函数的一些简单想法(HDU2110)的主要内容,如果未能解决你的问题,请参考以下文章

HDU 2110-Crisis of HDU(母函数)

HDU2110 Crisis of HDU母函数

HDU1398(稍高级一些的母函数,对之前的补充)

HDU1171母函数

HDU1398物品无限的母函数

排列组合 HDU - 1521 -指数型母函数