import java.util.Scanner;

public class Main {

	public static void main(String[] args) {

		try (Scanner sc = new Scanner(System.in)) {
			int N = Integer.parseInt(sc.next());
			int M = Integer.parseInt(sc.next());
			int C = Integer.parseInt(sc.next());
			int[] B = new int[M];
			for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			}
			int[][] A = new int[N][M];
			for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			}
			
			int count = 0;
			
			for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			}
			
			
			System.out.println(count);
		} // Scanner Close
	}
} import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {

		try (Scanner sc = new Scanner(System.in)) {
			int N = Integer.parseInt(sc.next());
			int M = Integer.parseInt(sc.next());
			int C = Integer.parseInt(sc.next());
			int[] B = new int[M];
			for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			}
			int[][] A = new int[N][M];
			for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			}
			
			int count = 0;
			
			for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			}
			
			
			System.out.println(count);
		} // Scanner Close
	}
} Main public static void main(String[] args) {

		try (Scanner sc = new Scanner(System.in)) {
			int N = Integer.parseInt(sc.next());
			int M = Integer.parseInt(sc.next());
			int C = Integer.parseInt(sc.next());
			int[] B = new int[M];
			for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			}
			int[][] A = new int[N][M];
			for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			}
			
			int count = 0;
			
			for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			}
			
			
			System.out.println(count);
		} // Scanner Close
	} main {

		try (Scanner sc = new Scanner(System.in)) {
			int N = Integer.parseInt(sc.next());
			int M = Integer.parseInt(sc.next());
			int C = Integer.parseInt(sc.next());
			int[] B = new int[M];
			for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			}
			int[][] A = new int[N][M];
			for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			}
			
			int count = 0;
			
			for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			}
			
			
			System.out.println(count);
		} // Scanner Close
	} try (Scanner sc = new Scanner(System.in)) {
			int N = Integer.parseInt(sc.next());
			int M = Integer.parseInt(sc.next());
			int C = Integer.parseInt(sc.next());
			int[] B = new int[M];
			for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			}
			int[][] A = new int[N][M];
			for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			}
			
			int count = 0;
			
			for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			}
			
			
			System.out.println(count);
		} // Scanner Close {
			int N = Integer.parseInt(sc.next());
			int M = Integer.parseInt(sc.next());
			int C = Integer.parseInt(sc.next());
			int[] B = new int[M];
			for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			}
			int[][] A = new int[N][M];
			for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			}
			
			int count = 0;
			
			for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			}
			
			
			System.out.println(count);
		} Scanner sc = new Scanner(System.in) Scanner sc = new Scanner(System.in) new Scanner(System.in) int N = Integer.parseInt(sc.next()); N Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int M = Integer.parseInt(sc.next()); M Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int C = Integer.parseInt(sc.next()); C Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int[] B = new int[M]; B new int[M] M for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			} int i = 0; int i = 0; i 0 i < M i M i++ i++ i {
				B[i] = Integer.parseInt(sc.next());
			} {
				B[i] = Integer.parseInt(sc.next());
			} B[i] = Integer.parseInt(sc.next()) B[i] B i Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int[][] A = new int[N][M]; A new int[N][M] N M for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			} 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] = Integer.parseInt(sc.next());
				}
			} {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			} for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				} int j = 0; int j = 0; j 0 j < M j M j++ j++ j {
					A[i][j] = Integer.parseInt(sc.next());
				} {
					A[i][j] = Integer.parseInt(sc.next());
				} A[i][j] = Integer.parseInt(sc.next()) A[i][j] A[i] A i j Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int count = 0; count 0 for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			} int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			} {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			} int ret = 0; ret 0 for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				} int j = 0; int j = 0; j 0 j < M j M j++ j++ j {
					ret += A[i][j] * B[j]; 
				} {
					ret += A[i][j] * B[j]; 
				} ret += A[i][j] * B[j] ret A[i][j] * B[j] A[i][j] A[i] A i j B[j] B j if(ret + C > 0) {
					count++;
				} ret + C > 0 ret + C ret C 0 {
					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) {

		try (Scanner sc = new Scanner(System.in)) {
			int N = Integer.parseInt(sc.next());
			int M = Integer.parseInt(sc.next());
			int C = Integer.parseInt(sc.next());
			int[] B = new int[M];
			for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			}
			int[][] A = new int[N][M];
			for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			}
			
			int count = 0;
			
			for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			}
			
			
			System.out.println(count);
		} // Scanner Close
	}
} public class Main {

	public static void main(String[] args) {

		try (Scanner sc = new Scanner(System.in)) {
			int N = Integer.parseInt(sc.next());
			int M = Integer.parseInt(sc.next());
			int C = Integer.parseInt(sc.next());
			int[] B = new int[M];
			for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			}
			int[][] A = new int[N][M];
			for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			}
			
			int count = 0;
			
			for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			}
			
			
			System.out.println(count);
		} // Scanner Close
	}
} Main
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {

		try (Scanner sc = new Scanner(System.in)) {
			int N = Integer.parseInt(sc.next());
			int M = Integer.parseInt(sc.next());
			int C = Integer.parseInt(sc.next());
			int[] B = new int[M];
			for(int i = 0; i < M; i++) {
				B[i] = Integer.parseInt(sc.next());
			}
			int[][] A = new int[N][M];
			for(int i = 0; i < N; i++) {
				for(int j = 0; j < M; j++) {
					A[i][j] = Integer.parseInt(sc.next());
				}
			}
			
			int count = 0;
			
			for(int i = 0; i < N; i++) {
				int ret = 0;
				for(int j = 0; j < M; j++) {
					ret += A[i][j] * B[j]; 
				}
				if(ret + C > 0) {
					count++;
				}
			}
			
			
			System.out.println(count);
		} // Scanner Close
	}
}