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