标签:
2 3 1 2 1 2 3 5 0 3 0 3 0 3
2 12
#include <iostream> #include <stdio.h> #include <string> #include <cstring> #include <cmath> #include <algorithm> #define N 100009 using namespace std; int n,m; int c1[N],c2[N]; int a[N],b[N]; int main() { while(~scanf("%d %d",&n,&m)) { int ff=0; for(int i=1;i<=n;i++) { scanf("%d %d",&a[i],&b[i]); ff+=b[i]; } memset(c1,0,sizeof c1); memset(c2,0,sizeof c2); c1[0]=1; for(int i=1;i<=n;i++) { for(int j=0;j<=m;j++)//只要m个 { for(int k=a[i]; k+j<=m&&k<=b[i]; k++) c2[k+j]+=c1[j]; } for(int j=0;j<=m;j++) { c1[j]=c2[j]; c2[j]=0; } } printf("%d\n",c1[m]); } return 0; }
标签:
原文地址:http://blog.csdn.net/wust_zjx/article/details/44338831