'use strict'
function Main(input){
  input=input.trim().split(/\s+/).map(x=>x-0);
  const R=input[0],G=input[1],B=input[2],N=input[3];
  const dp=[[],[],[],[],];
  /*dp[i][j]はRGBの前からi色を使って
  のこりの玉をjにのする場合の数*/
  for(let i=0;i<=3;i++){
    for(let j=0;j<=N+R+G+B;j++){
      dp[i][j]=0;
    }
  }
  
  dp[0][N]=1;
  
  for(let i=1;i<=3;i++){
    for(let j=N;j>=0;j--){
      dp[i][j]+=dp[i-1][j]+dp[i][j+input[i-1]];
    }
  }
  console.log(dp[3][0]);
}

Main(require('fs').readFileSync('/dev/stdin','utf8'));