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 count =0;
    for(int i =0;i<=A;i++){
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    }
    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 count =0;
    for(int i =0;i<=A;i++){
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    }
    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 count =0;
    for(int i =0;i<=A;i++){
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    }
    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 count =0;
    for(int i =0;i<=A;i++){
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    }
    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 count =0; count 0 for(int i =0;i<=A;i++){
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    } int i =0; int i =0; i 0 i<=A i A i++ i++ i {
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    } {
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    } for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	} int j=0; int j=0; j 0 j<=B j B j++ j++ j {
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	} {
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	} for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		} int z=0; int z=0; z 0 z<=C z C z++ z++ z {
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		} {
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		} if(X == 500*i + 100*j + 50*z){
    			count++;
    		} X == 500*i + 100*j + 50*z X 500*i + 100*j + 50*z 500*i + 100*j + 50*z 500*i 500 i 100*j 100 j 50*z 50 z {
    			count++;
    		} count++ count 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 count =0;
    for(int i =0;i<=A;i++){
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    }
    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 count =0;
    for(int i =0;i<=A;i++){
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    }
    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 count =0;
    for(int i =0;i<=A;i++){
    	for(int j=0;j<=B;j++){
    		for(int z=0;z<=C;z++){
    		if(X == 500*i + 100*j + 50*z){
    			count++;
    		}	
    		}
    	}
    }
    System.out.println(count);
	}
}
