#include using namespace std; #define FOR(i,a,b) for (int i=(a);i<(b);i++) #define RFOR(i,a,b) for (int i=(b)-1;i>=(a);i--) #define REP(i,n) for (int i=0;i<(n);i++) #define RREP(i,n) for (int i=(n)-1;i>=0;i--) int A[3]; int dp[8][32]; int N; int E[32]; int main(){ cin>>A[0]>>A[1]>>A[2]; sort(A,A+3); cin>>N; REP(i,N){ cin>>E[i+1]; } REP(i,8){ REP(j,32){ dp[i][j]=0; } } dp[0][0]=1; for(int i=1;i<=N;i++){ for(int j=0;j<8;j++){ dp[j][i]=dp[j][i-1]; } if(E[i]>=A[2]){ dp[4][i]+=dp[0][i-1]; dp[6][i]+=dp[2][i-1]+dp[4][i-1]; dp[5][i]+=dp[1][i-1]; dp[7][i]+=dp[3][i-1]+dp[5][i-1]+dp[6][i-1]+dp[7][i-1]; }else if(E[i]>=A[1]){ dp[2][i]+=dp[0][i-1]; dp[3][i]+=dp[1][i-1]+dp[2][i-1]+dp[3][i-1]; dp[6][i]+=dp[4][i-1]; dp[7][i]+=dp[5][i-1]+dp[6][i-1]+dp[7][i-1]; }else if(E[i]>=A[0]){ dp[1][i]+=dp[0][i-1]+dp[1][i-1]; dp[3][i]+=dp[2][i-1]+dp[3][i-1]; dp[5][i]+=dp[4][i-1]+dp[5][i-1]; dp[7][i]+=dp[6][i-1]+dp[7][i-1]; }else{ REP(j,8){ dp[j][i]+=dp[j][i-1]; } } } cout<