import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int M = sc.nextInt();
    int C = sc.nextInt();
    int[] B = new int[M];
    int[][] A = new int[N][M];
    for (int i = 0; i < M; i++) {
      B[i] = sc.nextInt();
    }
    for (int i = 0; i < N; i++) {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    }
    Main abc122B = new Main();
    System.out.println(abc122B.solve(N, M, C, B, A));
  }

  public int solve(int N, int M, int C, int[] B, int[][] A) {
    int ans = 0;
    for (int[] a : A) {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    }

    return ans;
  }
} import java.util.Scanner; Scanner java.util public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int M = sc.nextInt();
    int C = sc.nextInt();
    int[] B = new int[M];
    int[][] A = new int[N][M];
    for (int i = 0; i < M; i++) {
      B[i] = sc.nextInt();
    }
    for (int i = 0; i < N; i++) {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    }
    Main abc122B = new Main();
    System.out.println(abc122B.solve(N, M, C, B, A));
  }

  public int solve(int N, int M, int C, int[] B, int[][] A) {
    int ans = 0;
    for (int[] a : A) {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    }

    return ans;
  }
} Main public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int M = sc.nextInt();
    int C = sc.nextInt();
    int[] B = new int[M];
    int[][] A = new int[N][M];
    for (int i = 0; i < M; i++) {
      B[i] = sc.nextInt();
    }
    for (int i = 0; i < N; i++) {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    }
    Main abc122B = new Main();
    System.out.println(abc122B.solve(N, M, C, B, A));
  } main {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int M = sc.nextInt();
    int C = sc.nextInt();
    int[] B = new int[M];
    int[][] A = new int[N][M];
    for (int i = 0; i < M; i++) {
      B[i] = sc.nextInt();
    }
    for (int i = 0; i < N; i++) {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    }
    Main abc122B = new Main();
    System.out.println(abc122B.solve(N, M, C, B, A));
  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc int M = sc.nextInt(); M sc.nextInt() sc.nextInt sc int C = sc.nextInt(); C sc.nextInt() sc.nextInt sc int[] B = new int[M]; B new int[M] M int[][] A = new int[N][M]; A new int[N][M] N M for (int i = 0; i < M; i++) {
      B[i] = sc.nextInt();
    } int i = 0; int i = 0; i 0 i < M i M i++ i++ i {
      B[i] = sc.nextInt();
    } {
      B[i] = sc.nextInt();
    } B[i] = sc.nextInt() B[i] B i sc.nextInt() sc.nextInt sc for (int i = 0; i < N; i++) {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    } int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    } {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    } for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      } int j = 0; int j = 0; j 0 j < M j M j++ j++ j {
        A[i][j] = sc.nextInt();
      } {
        A[i][j] = sc.nextInt();
      } A[i][j] = sc.nextInt() A[i][j] A[i] A i j sc.nextInt() sc.nextInt sc Main abc122B = new Main(); abc122B new Main() System.out.println(abc122B.solve(N, M, C, B, A)) System.out.println System.out System System.out abc122B.solve(N, M, C, B, A) abc122B.solve abc122B N M C B A String[] args args public int solve(int N, int M, int C, int[] B, int[][] A) {
    int ans = 0;
    for (int[] a : A) {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    }

    return ans;
  } solve {
    int ans = 0;
    for (int[] a : A) {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    }

    return ans;
  } int ans = 0; ans 0 for (int[] a : A) {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    } int[] a A {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    } {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    } int sum = C; sum C for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      } int i = 0; int i = 0; i 0 i < M i M i++ i++ i {
        sum += a[i] * B[i];
      } {
        sum += a[i] * B[i];
      } sum += a[i] * B[i] sum a[i] * B[i] a[i] a i B[i] B i if (sum > 0) ans += 1; sum > 0 sum 0 ans += 1 ans 1 return ans; ans int N N int M M int C C int[] B B int[][] A A public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int M = sc.nextInt();
    int C = sc.nextInt();
    int[] B = new int[M];
    int[][] A = new int[N][M];
    for (int i = 0; i < M; i++) {
      B[i] = sc.nextInt();
    }
    for (int i = 0; i < N; i++) {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    }
    Main abc122B = new Main();
    System.out.println(abc122B.solve(N, M, C, B, A));
  }

  public int solve(int N, int M, int C, int[] B, int[][] A) {
    int ans = 0;
    for (int[] a : A) {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    }

    return ans;
  }
} public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int M = sc.nextInt();
    int C = sc.nextInt();
    int[] B = new int[M];
    int[][] A = new int[N][M];
    for (int i = 0; i < M; i++) {
      B[i] = sc.nextInt();
    }
    for (int i = 0; i < N; i++) {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    }
    Main abc122B = new Main();
    System.out.println(abc122B.solve(N, M, C, B, A));
  }

  public int solve(int N, int M, int C, int[] B, int[][] A) {
    int ans = 0;
    for (int[] a : A) {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    }

    return ans;
  }
} Main
import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    int M = sc.nextInt();
    int C = sc.nextInt();
    int[] B = new int[M];
    int[][] A = new int[N][M];
    for (int i = 0; i < M; i++) {
      B[i] = sc.nextInt();
    }
    for (int i = 0; i < N; i++) {
      for (int j = 0; j < M; j++) {
        A[i][j] = sc.nextInt();
      }
    }
    Main abc122B = new Main();
    System.out.println(abc122B.solve(N, M, C, B, A));
  }

  public int solve(int N, int M, int C, int[] B, int[][] A) {
    int ans = 0;
    for (int[] a : A) {
      int sum = C;
      for (int i = 0; i < M; i++) {
        sum += a[i] * B[i];
      }
      if (sum > 0) ans += 1;
    }

    return ans;
  }
}
