最基础的母函数,0ms秒过。 直接模版过掉。 #include<iostream> #include<cstring> using namespace std; #define M 101 int main(){ int n,m; while(cin>>n>>m){ int least[M],most[M],c1[M]={1},c2[M]={0},i,j,k; for(i=0;i<n;i++) cin>>least[i]>>most[i]; for(i=0;i<n;i++){ for(j=0;j<=m;j++) for(k=least[i];k<=most[i];k++) c2[j+k]+=c1[j]; for(j=0;j<=m;j++) c1[j]=c2[j],c2[j]=0; } cout<<c1[m]<<endl; } return 0; }