import java.util.*;
 
public class Main{
  public static void main(String[]args){
    Scanner sc = new Scanner(System.in);
    int A = Integer.parseInt(sc.nextLine());
    int B = Integer.parseInt(sc.nextLine());
    int C = Integer.parseInt(sc.nextLine());
    int X = Integer.parseInt(sc.nextLine());
    
    int ans = 0;
    for(int i = 0; i <= A; i++){
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    }
    
    System.out.println(ans);
  }
} import java.util.*; util.* java public class Main{
  public static void main(String[]args){
    Scanner sc = new Scanner(System.in);
    int A = Integer.parseInt(sc.nextLine());
    int B = Integer.parseInt(sc.nextLine());
    int C = Integer.parseInt(sc.nextLine());
    int X = Integer.parseInt(sc.nextLine());
    
    int ans = 0;
    for(int i = 0; i <= A; i++){
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    }
    
    System.out.println(ans);
  }
} Main public static void main(String[]args){
    Scanner sc = new Scanner(System.in);
    int A = Integer.parseInt(sc.nextLine());
    int B = Integer.parseInt(sc.nextLine());
    int C = Integer.parseInt(sc.nextLine());
    int X = Integer.parseInt(sc.nextLine());
    
    int ans = 0;
    for(int i = 0; i <= A; i++){
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    }
    
    System.out.println(ans);
  } main {
    Scanner sc = new Scanner(System.in);
    int A = Integer.parseInt(sc.nextLine());
    int B = Integer.parseInt(sc.nextLine());
    int C = Integer.parseInt(sc.nextLine());
    int X = Integer.parseInt(sc.nextLine());
    
    int ans = 0;
    for(int i = 0; i <= A; i++){
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    }
    
    System.out.println(ans);
  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int A = Integer.parseInt(sc.nextLine()); A Integer.parseInt(sc.nextLine()) Integer.parseInt Integer sc.nextLine() sc.nextLine sc int B = Integer.parseInt(sc.nextLine()); B Integer.parseInt(sc.nextLine()) Integer.parseInt Integer sc.nextLine() sc.nextLine sc int C = Integer.parseInt(sc.nextLine()); C Integer.parseInt(sc.nextLine()) Integer.parseInt Integer sc.nextLine() sc.nextLine sc int X = Integer.parseInt(sc.nextLine()); X Integer.parseInt(sc.nextLine()) Integer.parseInt Integer sc.nextLine() sc.nextLine sc int ans = 0; ans 0 for(int i = 0; i <= A; i++){
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    } int i = 0; int i = 0; i 0 i <= A i A i++ i++ i {
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    } {
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    } for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      } int j = 0; int j = 0; j 0 j <= B j B j++ j++ j {
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      } {
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      } int z = i*500+j*100; z i*500+j*100 i*500 i 500 j*100 j 100 if(z > X){
          continue;
        } z > X z X {
          continue;
        } continue; if((X-z)/50 <= C){
          ans++;
        } (X-z)/50 <= C (X-z)/50 (X-z) X z 50 C {
          ans++;
        } ans++ ans System.out.println(ans) System.out.println System.out System System.out ans String[]args args public class Main{
  public static void main(String[]args){
    Scanner sc = new Scanner(System.in);
    int A = Integer.parseInt(sc.nextLine());
    int B = Integer.parseInt(sc.nextLine());
    int C = Integer.parseInt(sc.nextLine());
    int X = Integer.parseInt(sc.nextLine());
    
    int ans = 0;
    for(int i = 0; i <= A; i++){
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    }
    
    System.out.println(ans);
  }
} public class Main{
  public static void main(String[]args){
    Scanner sc = new Scanner(System.in);
    int A = Integer.parseInt(sc.nextLine());
    int B = Integer.parseInt(sc.nextLine());
    int C = Integer.parseInt(sc.nextLine());
    int X = Integer.parseInt(sc.nextLine());
    
    int ans = 0;
    for(int i = 0; i <= A; i++){
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    }
    
    System.out.println(ans);
  }
} Main
import java.util.*;
 
public class Main{
  public static void main(String[]args){
    Scanner sc = new Scanner(System.in);
    int A = Integer.parseInt(sc.nextLine());
    int B = Integer.parseInt(sc.nextLine());
    int C = Integer.parseInt(sc.nextLine());
    int X = Integer.parseInt(sc.nextLine());
    
    int ans = 0;
    for(int i = 0; i <= A; i++){
      for(int j = 0; j <= B; j++){
        int z = i*500+j*100;
        if(z > X){
          continue;
        }
        if((X-z)/50 <= C){
          ans++;
        }
      }
    }
    
    System.out.println(ans);
  }
}