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;
	 int xx=x;
	 int cc=0;



	 for(int i=0;i<=x/500;i++){
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						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;
	 int xx=x;
	 int cc=0;



	 for(int i=0;i<=x/500;i++){
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						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;
	 int xx=x;
	 int cc=0;



	 for(int i=0;i<=x/500;i++){
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						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;
	 int xx=x;
	 int cc=0;



	 for(int i=0;i<=x/500;i++){
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						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 int xx=x; xx x int cc=0; cc 0 for(int i=0;i<=x/500;i++){
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						count++;
					}
			 }
		 }
	 } int i=0; int i=0; i 0 i<=x/500 i x/500 x 500 i++ i++ i {
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						count++;
					}
			 }
		 }
	 } {
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						count++;
					}
			 }
		 }
	 } for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						count++;
					}
			 }
		 } int k=0; int k=0; k 0 k<=x/100 k x/100 x 100 k++ k++ k {
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						count++;
					}
			 }
		 } {
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						count++;
					}
			 }
		 } xx=x xx x xx-=500*i+100*k xx 500*i+100*k 500*i 500 i 100*k 100 k if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						count++;
					}
			 } xx>=0 xx 0 {
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						count++;
					}
			 } cc=xx/50 cc xx/50 xx 50 if(i<=a && k<=b && cc<=c){
						count++;
					} i<=a && k<=b && cc<=c i<=a && k<=b && cc<=c i<=a i a k<=b k b cc<=c cc c {
						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;
	 int xx=x;
	 int cc=0;



	 for(int i=0;i<=x/500;i++){
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						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;
	 int xx=x;
	 int cc=0;



	 for(int i=0;i<=x/500;i++){
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						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;
	 int xx=x;
	 int cc=0;



	 for(int i=0;i<=x/500;i++){
		 for(int k=0;k<=x/100;k++){
			 xx=x;
			 xx-=500*i+100*k;
			 if(xx>=0){
				 cc=xx/50;
					if(i<=a && k<=b && cc<=c){
						count++;
					}
			 }
		 }
	 }

	 System.out.println(count);




	}
}
