hdu 2152 Fruit

母函数

#include<stdio.h>
#include<string.h>
int c1[200],c2[200];
int a[200],b[200];
int main()
{
     int i,j,k,n,m;
     while(scanf("%d %d",&n,&m)!=EOF)
     {
          for(i=0;i<n;i++)
               scanf("%d %d",&a[i],&b[i]);
          memset(c1,0,sizeof(c1));
          memset(c2,0,sizeof(c2));
        for(i=a[0];i<=b[0];i++)
               c1[i]=1;
          for(i=2;i<=n;i++)
          {
               for(j=0;j<=m;j++)
                    for(k=a[i-1];k+j<=m&&k<=b[i-1];k++)
                    c2[j+k]+=c1[j];
                    for(j=0;j<=m;j++)
                    {
                         c1[j]=c2[j];
                         c2[j]=0;
                    }
          }
          printf("%d\n",c1[m]);
     }
     return 0;
}

 

posted @ 2013-08-11 10:41  SprayT  阅读(125)  评论(0编辑  收藏  举报