#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define N 100003
int c[5],T,d[5],s;
ll f[N],ans;
int F(int num){
return c[num]*(d[num]+1);
}
int main(){
for(int i=1;i<=4;i++) scanf(“%d”,&c[i]);
scanf(“%d”,&T);
f[0]=1;
for(int i=1;i<=4;i++)
for(int j=c[i];j<N;j++)
f[j]+=f[j-c[i]];
while(T–){
for(int i=1;i<=4;i++) scanf(“%d”,&d[i]);
scanf(“%d”,&s);
ans=f[s];
for(int i=1;i<=15;i++){
int cnt=s,k=0;
for(int tmp=i,j=1;tmp;tmp>>=1,j++)
if(tmp&1) k^=1,cnt-=F(j);
if(cnt>=0) k?ans-=f[cnt]:ans+=f[cnt];
}
printf(“%lld\n”,ans);
}
return 0;
}
版权声明:本文为m0_74821245原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。