import java.util.*;

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

public class Main{
	public static void main(String[] args){
      
      Scanner sc = new Scanner(System.in);
      
      int A = sc.nextInt();
      int B = sc.nextInt();
   	  int C = sc.nextInt();
      int X = sc.nextInt();
      
      int y = 0;
      int count = 0;
      for(int i=0; i <= A ; i++){
      	for(int j=0; j <= B; j++){
        	y = (X-500*i-100*j)/50;
            if(y >= 0 && y <= C){
            	count = count+1;
            }
               
        }
      }
	System.out.println(count);
    }
}
