Problem:
 Score : 200 points    Problem Statement There are N pieces of source code. The characteristics of the i -th code is represented by M integers A_{i1}, A_{i2}, ..., A_{iM} .  Additionally, you are given integers B_1, B_2, ..., B_M and C .  The i -th code correctly solves this problem if and only if A_{i1} B_1 + A_{i2} B_2 + ... + A_{iM} B_M + C > 0 .  Among the N codes, find the number of codes that correctly solve this problem.      Constraints  All values in input are integers.  1 \leq N, M \leq 20  -100 \leq A_{ij} \leq 100  -100 \leq B_i \leq 100  -100 \leq C \leq 100         Input Input is given from Standard Input in the following format:  N  M  C  B_1  B_2  ...  B_M  A_{11}  A_{12}  ...  A_{1M}  A_{21}  A_{22}  ...  A_{2M}  \vdots  A_{N1}  A_{N2}  ...  A_{NM}       Output Print the number of codes among the given N codes that correctly solve this problem.        Sample Input 1 2 3 -10
1 2 3
3 2 1
1 2 2      Sample Output 1 1  Only the second code correctly solves this problem, as follows:   Since 3 \times 1 + 2 \times 2 + 1 \times 3 + (-10) = 0 \leq 0 , the first code does not solve this problem.  1 \times 1 + 2 \times 2 + 2 \times 3 + (-10) = 1 > 0 , the second code solves this problem.        Sample Input 2 5 2 -4
-2 5
100 41
100 40
-3 0
-6 -2
18 -13      Sample Output 2 2       Sample Input 3 3 3 0
100 -100 0
0 100 100
100 100 100
-100 100 100      Sample Output 3 0  All of them are Wrong Answer . Except yours.

Solution (Python):
import sys
import bisect
import heapq
from collections import deque


def input():
    return sys.stdin.readline().rstrip()


def sump(x, y, z, t):
    ans = z
    for i in range(t):
        ans += x[i] * y[i]

    return ans

def main():
    N, M, C = map(int, input().split())
    B = list(map(int, input().split()))
    count =0
    for j in range(N):
        A = list(map(int,input().split()))
        if sump(A,B,C,M) >0:
            count +=1

    print(count)

if __name__ == "__main__":
    main()

Solution (Python):
n,m,c=map(int,input().split())
b=list(map(int,input().split()))
ans=0
for i in range(n):
  a=list(map(int,input().split()))
  score=0
  for j in range(m):
    score+=a[j]*b[j]
  if score+c>0:
    ans+=1
print(ans)

Solution (Python):
f=lambda:[*map(int,input().split())]
n,m,c=f()
l=f()
print(sum(sum(a*b for a,b in zip(f(),l))>-c for _ in range(n)))

Solution (Python):
f=lambda:[*map(int,input().split())]
n,m,c=f()
l=f()
print(sum(sum(a*b for a,b in zip(f(),l))+c>0 for _ in range(n)))

Solution (Python):
f=lambda:[*map(int,input().split())]
n,m,c=f()
l=f()
a=0
for _ in range(n):
  t=sum(a*b for a,b in zip(f(),l))
  if t+c>0: a+=1
print(a)

Solution (Python):
N, M, C = input().split()
N = int(N)
M = int(M)
C = int(C)

B = []
b = list(map(int, input().split()))

A = []
for i in range(N):
    A.append(list(map(int, input().split())))

results = [[sum(a*b for a,b in zip(x_row, b))] for x_row in A]

working = 0
for result in results:
    if ((result[0] + C) > 0):
        working += 1

print(working)

Solution (Python):
n,m,c=map(int,input().split())
b=list(map(int,input().split()))
count=0
for _ in range(n):
    a=list(map(int,input().split()))
    sum=0
    for i in range(m):
        sum+=a[i]*b[i]
    if sum+c>0:
        count+=1
print(count)

Solution (Python):
import math,string,itertools,fractions,heapq,collections,re,array,bisect,sys,random,time,copy,functools
from collections import deque

sys.setrecursionlimit(10**7)
inf = 10**20
mod = 10**9 + 7

DR = [1, -1, 0, 0]
DC = [0, 0, 1, -1]

def LI(): return [int(x) for x in sys.stdin.readline().split()]
def LI_(): return [int(x)-1 for x in sys.stdin.readline().split()]
def LF(): return [float(x) for x in sys.stdin.readline().split()]
def LS(): return sys.stdin.readline().split()
def I(): return int(sys.stdin.readline())
def F(): return float(sys.stdin.readline())
def S(): return input()
     
def main():
    n, m, c = LI()
    B = LI()
    cnt = 0
    for i in range(n):
        A = LI()
        tmp = c
        for i, a in enumerate(A):
            tmp += B[i] * a
        if tmp > 0:
            cnt += 1
    print(cnt)


main()

Solution (Python):
n,m,c=map(int, input().split())
b=list(map(int, input().split()))
cnt=0
for i in range(n):
  s=0
  a=list(map(int, input().split()))
  for j in range(m):
    s=s+a[j]*b[j]
  if s+c>0:
    cnt=cnt+1
print(cnt)

Solution (Python):
N, M, C= map(int, input().split())
B = list(map(int, input().split()))

res = 0
c = -C

for _ in range(N):
    A = list(map(int, input().split()))
    t = 0
    for i in range(M):
        t += A[i] * B[i]

    if t > c:
        res += 1

print(res)

Solution (Python):
n,m,c=map(int,input().split())
b=list(map(int,input().split()))
count=0
for _ in range(n):
  result=c
  a=list(map(int,input().split()))
  for i,j in zip(a,b):
    result+=i*j
  if result>0: count+=1
print(count)

Solution (Python):
N, M, C = map(int,input().split())
B = list(map(int,input().split()))
A_list = [list(map(int,input().split())) for _ in range(N)]

correct = 0
for A in A_list:
    sum_ab = C
    for a, b in zip(A, B):
        sum_ab += a*b
    if sum_ab > 0:
        correct += 1

print(correct)

Solution (Python):











def solve(n,m,c,a,b):
  res = 0
  for i in range(n):
    res += sum(a[i][j]*b[j] for j in range(m)) + c > 0
  return res



def main():
  N,M,C = map(int,input().split())
  B = list(map(int,input().split()))
  A = [list(map(int,input().split())) for _ in range(N)]
  print(solve(N,M,C,A,B))
  return

if __name__ == '__main__':
  main()

Solution (Python):
n, m, c = map(int,input().split())
b = list(map(int,input().split()))
ans = 0
for i in range(n):
    a = list(map(int,input().split()))
    num = 0
    for j in range(m ):
        num += a[j] * b[j]
        
    if num + c > 0:
        ans += 1
        
print(ans)

Solution (Python):
N,M,C = map(int,input().split())
B = list(map(int,input().split()))

count = 0

for n in range(N):
  ans = 0
  A = list(map(int,input().split()))
  for m in range(M):
    ans += A[m]*B[m]
  if ans + C > 0:    
    count += 1
    
print(count)

Solution (Python):
MM = input().split()
N = int(MM[0])
M = int(MM[1])
C = int(MM[2])
count= 0
BB = input().split()
for i in range(N):
  AA = input().split()
  total = C
  for i,j in zip(BB,AA):
    
    total += int(i)*int(j)
  
  if total >0:
    count +=1
print(count)

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
a = [list(map(int, input().split())) for _ in range(n)]
ans = 0
for i in range(n):
    sm = c
    for j in range(m):
        sm += a[i][j]*b[j]

    if sm > 0:
        ans += 1
print(ans)

Solution (Python):
from operator import mul
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
count = 0

for i in range(n):
    a = list(map(int, input().split()))
    com = map(mul, a, b)
    if sum(com) + c > 0:
        count += 1
    a.clear()

print(count)

Solution (Python):
N,M,C = map(int, input().split())
B = list(map(int, input().split()))
count = 0
for i in range(N):
  A = list(map(int, input().split()))
  ans = C
  for j in range(M):
    ans += A[j]*B[j]
  if ans > 0:
    count += 1
print(count)

Solution (Python):
N,M,C=map(int,input().split())
B=list(map(int,input().split()))
count=0
for i in range(N):
  A=list(map(int,input().split()))
  if sum([A[i]*B[i] for i in range(M)])+C>0:
    count += 1
print(count)

Solution (Python):
n,m,c = map(int,input().split())
b = list(map(int,input().split()))
a = [list(map(int,input().split())) for _ in range(n)]
count = 0
for i in range(n):
  check = c
  for j in range(m):
    check += b[j]*a[i][j]
    if j == m-1:
      if check > 0:
        count += 1
      else:
        pass
print(count)

Solution (Python):
ans=0
N,M,C=map(int,input().split())
B=list(map(int,input().split()))
for i in range(N):
  A=list(map(int,input().split()))
  s=0
  for j in range(M):
    s+=A[j]*B[j]
  if s+C>0:
    ans+=1
print(ans)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
A = [list(map(int, input().split())) for _ in range(N)]

count = 0
for A in A:
    ans = C
    for a, b in zip(A, B):
        ans += a * b
    if ans > 0:
        count += 1
print(count)

Solution (Python):
n, m, c = [int(x) for x in input().split()]
bb = [int(x) for x in input().split()]
a = [list(map(int, input().split())) for _ in range(n)]

result = 0
for ae in a:
  tmp = sum([a*b for a, b in zip(ae, bb)]) + c
  if tmp > 0:
    result += 1

print(result)

Solution (Python):
answer = 0
n,m,c = map(int,input().split())
b = list(map(int,input().split()))

for i in range(n):
	result = c
	a = list(map(int,input().split()))
	for j in range(m):
		result += a[j] * b[j]
	if result > 0:
		answer += 1

print(answer)

Solution (Python):
import numpy

N, M, C = map(int, input().split())
B = list(map(int, input().split()))
B = numpy.array(B)

ans = 0
for _ in range(N):
    a = numpy.array(list(map(int, input().split())))
    if numpy.dot(a, B) + C > 0:
        ans += 1

print(ans)

Solution (Python):
N,M,C=map(int,input().split())
B=list(map(int,input().split()))
cnt=0
for i in range(N):
    am=0
    A=list(map(int,input().split()))
    for j in range(M):
        am+=B[j]*A[j]
    if am+C>0:
        cnt+=1
print(cnt)

Solution (Python):









































































def calculation(lines):
    
    
    N, M, C = list(map(int, lines[0].split()))
    values_b = list(map(int, lines[1].split()))
    
    
    
    
    valueses = list()
    for i in range(N):
        valueses.append(list(map(int, lines[i+2].split())))

    cnt = 0

    for values in valueses:
        sm = C
        for i in range(M):
            sm += values_b[i] * values[i]
        if sm > 0:
            cnt += 1

    return [cnt]



def get_input_lines():
    line = input()
    N, M, C = list(map(int, line.split()))
    lines = list()
    lines.append(line)
    for _ in range(N+1):
        lines.append(input())
    return lines



def get_testdata(pattern):
    if pattern == 1:
        lines_input = ['2 3 -10', '1 2 3', '3 2 1', '1 2 2']
        lines_export = [1]
    if pattern == 2:
        lines_input = ['5 2 -4', '-2 5', '100 41', '100 40', '-3 0', '-6 -2', '18 -13']
        lines_export = [2]
    if pattern == 3:
        lines_input = ['3 3 0', '100 -100 0', '0 100 100', '100 100 100', '-100 100 100']
        lines_export = [0]
    return lines_input, lines_export



def get_mode():
    import sys
    args = sys.argv
    if len(args) == 1:
        mode = 0
    else:
        mode = int(args[1])
    return mode



def main():
    import time
    started = time.time()
    mode = get_mode()
    if mode == 0:
        lines_input = get_input_lines()
    else:
        lines_input, lines_export = get_testdata(mode)

    lines_result = calculation(lines_input)

    for line_result in lines_result:
        print(line_result)

    
    
    
    
    
    
    
    
    
    
    



if __name__ == '__main__':
    main()

Solution (Python):

 

 
import sys
from fractions import gcd
import math
from math import ceil,floor
import collections
from collections import Counter
import itertools


 








N,M,C=map(int, input().split())
B=list(map(int, input().split()))
A=[list(map(int,input().split())) for _ in range(N)]

ans = 0

for i in range(N):
    tmp = 0
    for j in range(M):
        tmp += A[i][j]*B[j]
    if tmp+C>0:
        ans += 1

print(ans)

Solution (Python):
import numpy as np

N, M, C = map(int, input().split())
B = list(map(int, input().split()))
A = [list(map(int, input().split())) for _ in range(N)]

B_array = np.array(B)
A_array = np.array(A)

count = 0
for i in range(N):
    code = (A_array[i, :] * B_array).sum() + C

    if code > 0:
        count += 1

print(count)

Solution (Python):
N,M,C = map(int,input().split())
B_List =  list(map(int,input().split()))
Counter = 0
for i in range(N):
    Corrent_List = list(map(int,input().split()))
    Number = 0
    for j in range(M):
        Number += Corrent_List[j]*B_List[j]
    Number += C
    if Number > 0:
        Counter += 1

print(Counter)

Solution (Python):
n,m,c=map(int,input().split())
b=list(map(int,input ().split()))
num=0
for _ in range(n):
  a=list(map(int,input().split()))
  hoge=0
  for i in range(m):
    hoge+=a[i]*b[i]
  if hoge+c>0:
    num+=1
print(num)

Solution (Python):
n , m , c = map(int , input().split())
list_=[]
num=0
for a in range(n+1):
  list_.append(list(map(int , input().split())))
for b in range(1,n+1):
  sum_= c
  for d in range(m):
    sum_ = sum_ + (list_[0][d]*list_[b][d])
  if sum_ > 0:
    num = num + 1
print(num)

Solution (Python):
N,M,C=map(int,input().split())
ListB = list(map(int, input().split()))
ListA = []
for i in range (N):
  ListA.append(list(map(int, input().split())))
res =0
mid = 0
for i in range(N):
  for j in range(M):
    mid += ListA[i][j]*ListB[j]
  mid += C
  if mid > 0:
    res+=1
  mid = 0
print(res)

Solution (Python):
a,b,c=map(int,input().split())
d=list(map(int,input().split()))
e=[]
for i in range(a):
    e.append(list(map(int,input().split())))
ans=0
for i in range(a):
    result=0
    for j in range(b):
        result+=d[j]*e[i][j]
    result+=c
    if result>0:
        ans+=1
print(ans)

Solution (Python):
import numpy as np
N, M, C = map(int, input().split())
B = np.array(list(map(int, input().split())))
A = np.array([list(map(int, input().split())) for _ in range(N)])
cnt = 0
for a in A:
    if sum(a*B) + C > 0:
        cnt += 1
print(cnt)

Solution (Python):
n,m,c = map(int,input().split())

bl = list(map(int,input().split()))
al = [list(map(int,input().split())) for i in range(n)]
cnt = 0

for i in range(n):
    total = 0
    for j in range(m):
        total+=bl[j]*al[i][j]
    total+=c
    if 0 < total:
        cnt+=1
print(cnt)

Solution (Python):
n,m,c = map(int,input().split())
b = list(map(int,input().split()))
cnt = 0
for i in range(n):
    result = 0
    a = list(map(int,input().split()))
    for j in range(m):
        result += a[j]*b[j]

    if result > -c:
        cnt += 1

print(cnt)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int,input().split()))
ans = 0
for i in range(N):
    A = list(map(int,input().split()))
    tmp = C
    for j in range(M):
        tmp += A[j] * B[j]
    if tmp > 0:
        ans += 1
print(ans)

Solution (Python):
N, M, C = [int(n) for n in input().split()]
B = [int(n) for n in input().split()]
ans = 0
for i in range(N):
    A = [int(n) for n in input().split()]
    t = 0
    for a,b in zip(A, B):
        t += a*b
    if t+C > 0:
        ans += 1
print(ans)

Solution (Python):
n, m, c = map(int, input().split())
b = tuple(map(int, input().split()))
print(
    sum(
        sum(a * b for (b, a) in zip(b, list(map(int, input().split())))) + c > 0
        for _ in range(n)
    )
)

Solution (Python):
import sys

N, M, C = map(int, sys.stdin.readline().split())
B = list(map(int, sys.stdin.readline().split()))

ans = 0
for _ in range(N):
    A = list(map(int, sys.stdin.readline().split()))
    tmp = 0
    for i in range(M):
        tmp += A[i] * B[i]
    if tmp + C > 0:
        ans += 1

print(ans)

Solution (Python):
import numpy as np

n, m, c = map(int, input().split())
array = np.array(list(map(int,input().split())))
nm = []
for _ in range(n):
    _ = list(map(int,input().split()))
    nm.append(_)

count = 0
for _ in nm:
    if np.inner(array, _)+c>0:
        count += 1
print(count)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
A = [list(map(int, input().split())) for _ in range(N)]

cnt = 0

for i in range(N):
    res = C
    for j in range(M):
        res += B[j]*A[i][j]
    if res > 0:
        cnt += 1

print(cnt)

Solution (Python):
def main():
  n,m,c = list(map(int,input().split()))
  b = list(map(int,input().split()))
  a = [input().split() for l in range(n)]
  ans=0
  for i in range(0,n):
    sum=0
    for j in range(0,m):
      sum+=int(a[i][j])*b[j]
    if sum+c>0:
      ans+=1
  print(ans)
main()

Solution (Python):
N, M, C = map(int,input().split())
B = list(map(int,input().split()))
A = []
for p in range(N):
    A.append(list(map(int,input().split())))

result = 0
for i in range(N):
    sum = 0
    for j in range(M):
        sum += A[i][j] * B[j]
    if sum + C > 0:
        result += 1
print(result)

Solution (Python):
N,M,C = map(int, input().split())
li_b = list(map(int, input().split()))
li_a = []
ans = 0
for i in range(N):
    li = list(map(int, input().split()))
    li_a.append(li)
for i in range(N):
    num_sum = 0
    for t in range(M):
        num_sum += li_a[i][t]*li_b[t]
    if num_sum + C > 0:
        ans += 1
print(ans)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
As = [list(map(int, input().split())) for _ in range(N)]
print(sum(sum(a*b for a, b in zip(A, B))>-C for A in As))

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
a = [list(map(int, input().split())) for i in range(n)]
ans = 0
for i in range(n):
  x = 0
  for j in range(m):
    x += a[i][j] * b[j]
  if x + c > 0:
    ans += 1
print(ans)

Solution (Python):
N,M,C = map(int,input().split())
B = list(map(int,input().split()))
count = 0
value = 0
for i in range(N):
  A = list(map(int,input().split()))
  for j in range(len(A)):
    value = value + A[j] * B[j]
  if value + C > 0:
    count += 1
  value = 0
print(count)

Solution (Python):
n,m,c=map(int,input().split())
b=list(map(int,input().split()))
a=[list(map(int,input().split())) for i in range(n)]
ans=0
for i in range(n):
  cnt=c
  for j in range(m):
    cnt+=a[i][j]*b[j]
  if cnt>0:
    ans+=1
print(ans)

Solution (Python):



import numpy as np

n,m,c=map(int,input().split())
B = np.array(list(map(int,input().split())))
K=[]
for i in range(n):
    A = list(map(int,input().split()))
    K.append(A)

pp = np.array(K)
l = (pp*B).sum(axis=1)+c

t = 0
for i in range(len(l)):
    if l[i] > 0:
        t+=1
print(t)

Solution (Python):
N, M, C = map(int, input().split(' '))

B = list(map(int, input().split(' ')))

result = 0

for i in range(1, N+1):
  values = list(map(int, input().split(' ')))
  count = 0
  for idx, v in enumerate(values):
    count += v * B[idx]
  count += C

  if count > 0:
    result += 1

print(result)

Solution (Python):

n, m, c = map(int, input().split())
b = list(map(int, input().split()))
a = [(list(map(int, input().split()))) for _ in range(n)]

cnt = 0

for i in range(n):
    num = c
    for j in range(m):
        num += a[i][j] * b[j]
    if num > 0:
        cnt += 1

print(cnt)

Solution (Python):
N, M, C = map(int,input().split())
B = list(map(int,input().split()))
ans = 0
x = C


for i in range(N):
    A = list(map(int,input().split()))
    for k in range(M):
        x += A[k] * B[k]
    if x > 0:
        ans += 1
    x = C 

print(ans)

Solution (Python):
N, M, C = map(int, input().strip().split(" "))
B = list(map(int, input().strip().split(" ")))
count = 0

for _ in range(N):
    A = list(map(int, input().strip().split(" ")))
    s = 0
    for a, b in zip(A, B):
        s += a * b
    s += C
    if s > 0:
        count += 1

print(count)

Solution (Python):
N,M,C = map(int,input().split())
B = list(map(int,input().split()))
ans = 0

for n in range(N):
  P = 0
  A = list(map(int,input().split()))
  for a,b in zip(A,B):
    P += a*b
  if P+C>0:
    ans+=1
    
print(ans)

Solution (Python):
def main():
    import sys
    def input(): return sys.stdin.readline().rstrip()
    n, m, c = map(int, input().split())
    b = list(map(int, input().split()))
    cnt = 0
    for i in range(n):
        a = list(map(int, input().split()))
        ans = sum([a[j]*b[j] for j in range(m)]) + c
        if ans > 0:
            cnt += 1
    print(cnt)


if __name__ == '__main__':
    main()

Solution (Python):
import sys
sys.setrecursionlimit(10**6)

n, m, c = map(int, input().split())
b = list(map(int, input().split()))
readline = sys.stdin.readline
A = [[int(i) for i in readline().split()] for _ in range(n)]

ans = 0

for a in A:
    if sum([i*j for i,j in zip(a,b)]) + c > 0:
        ans += 1
        
print(ans)

Solution (Python):





def main():
    N, M, C = map(int, input().split())
    B = list(map(int, input().split()))
    A = [None] * N
    for i in range(N):
        A[i] = list(map(int, input().split()))

    ans = 0
    for i in range(N):
        left = C
        for j in range(M):
            left += A[i][j] * B[j]
        
        if left > 0:
            ans += 1
    
    return ans


print(main())

Solution (Python):
n,m,c = map(int,input().split())
b = list(map(int,input().split()))
ans = 0
for i in range(n):
    s = c
    a = list(map(int,input().split()))
    for j in range(m):
        s += b[j] * a[j]
    ans += s > 0
print(ans)

Solution (Python):
import sys

readline = sys.stdin.readline
MOD = 10 ** 9 + 7
INF = float('INF')
sys.setrecursionlimit(10 ** 5)


def main():
    n, m, c = map(int, readline().split())
    b = list(map(int, readline().split()))

    ans = 0

    for i in range(n):
        a = list(map(int, readline().split()))
        cur = c
        for j in range(m):
            cur += a[j] * b[j]
        if cur > 0:
            ans += 1

    print(ans)


if __name__ == '__main__':
    main()

Solution (Python):
import numpy as np
N, M, C = map(int, input().split())
B = np.array(list(map(int, input().split())))
res = 0
for _ in range(N):
  A = np.array(list(map(int, input().split())))
  if sum(A * B) + C > 0 : res+=1

print(res)

Solution (Python):
n,m,c=map(int,input().split())
b=list(map(int,input().split()))
anser=0
for i in range(n):
    a=list(map(int,input().split()))
    ans=0
    for j in range(m):
        ans+=a[j]*b[j]
    ans+=c    
    if ans>0:
        anser+=1
print(anser)

Solution (Python):
import numpy as np

n,m,c=map(int,input().split())
b=list(map(int,input().split()))
a=[]
for i in range(n):
    l=list(map(int,input().split()))
    a.append(l)

b=np.array(b).reshape(m,1)
a=np.array(a)

ab=np.dot(a,b)

ans=0
for i in range(n):
    if ab[i]+c>0:
        ans+=1

print(ans)

Solution (Python):
N,M,C=map(int,input().split())
B=map(int,input().split())
b=list(B)
X=0
Y=C
Z=0
def mul(x,y):
  return(x*y)

for i in range(N):
  A=map(int,input().split())
  a=list(A)
  for j in range(M):
    Y=Y+a[j]*b[j]
  if Y<=0:
    Y=C
  else:
    Z=Z+1
    Y=C

print(Z)

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
a = [list(map(int, input().split())) for _ in range(n)]

ans = 0
for ai in a:
    cnt = sum(aij * bi for aij, bi in zip(ai, b))
    ans += (cnt > -c)
print(ans)

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
a = [list(map(int, input().split())) for _ in range(n)]

ans = 0
for ai in a:
    cnt = sum(aij * bi for aij, bi in zip(ai, b))
    ans += (cnt > -c)
print(ans)

Solution (Python):
N, _, C = [int(i) for i in input().split()]
B =  [int(i) for i in input().split()]
A = []
for i in range(N):
  A.append([int(i) for i in input().split()])
  
cnt = 0
for a in A:
  s = C
  for i in range(len(B)):
    s += a[i] * B[i]
  if s > 0:
    cnt += 1
    
print(cnt)

Solution (Python):
import numpy as np

N, M, C = map(int, input().split())
B = list(map(int, input().split()))
A = np.zeros((N, len(B)))

for n in np.arange(N):
    A[n] = list(map(int, input().split()))

ans = 0
for n in np.arange(N):
    if np.dot(A[n], B) + C > 0:
        ans += 1

print(ans)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
ans = 0
for i in range(N):
    A = list(map(int, input().split()))
    temp = 0
    for a, b in zip(A, B):
        temp += a * b
    temp += C
    if temp > 0:
        ans += 1
print(ans)

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
ans=0
y = []

for i in range(n):
  a = map(int, input().split())
  A = list(a)
  for j in range(m):
    x = A[j] * b[j]
    y.append(int(x))
  if sum(y) + c <= 0:
    ans += 0
  else:
    ans += 1
  y.clear()
print(ans)

Solution (Python):
import sys
input = lambda: sys.stdin.readline().rstrip()

def main():
    n, m, c = map(int, input().split())
    b = list(map(int, input().split()))
    a = [list(map(int, input().split())) for _ in range(n)]
    ans = 0
    for i in range(n):
        sum_ = 0
        for j in range(m):
            sum_ += a[i][j] * b[j]
        sum_ += c
        if sum_ > 0:
            ans += 1
    print(ans)
            
if __name__ == '__main__':
    main()

Solution (Python):
n,m,c=map(int,input().split())
b=list(map(int,input().split()))
ans=0
for _ in range(n):
    a=list(map(int,input().split()))
    calc=c
    for j in range(m):
        calc+=a[j]*b[j]
    if calc>0:
        ans+=1
print(ans)

Solution (Python):
n,m,c = map(int,input().split())
B = list(map(int,input().split()))

ans = 0
for _ in range(n):
    temp = c
    A = list(map(int,input().split()))
    for i in range(m):
        temp += B[i]*A[i]
    
    if temp > 0:
        ans += 1

print(ans)

Solution (Python):
import sys
N,M,C = map(int,input().split())
array_b = list(map(int,input().split()))
array2_a = [ list(map(int,input().split())) if ( -100 <= I <= 100 ) else sys.exit() for I in range(N) ] 

if not ( 1 <= N <= 20 and 1 <= M <= 20 ): sys.exit()
for J in range(len(array_b)): 
    if not ( -100 <= array_b[J] <= 100 ): sys.exit()

count = 0
for K in range(N):
    sum = 0
    for L in range(len(array2_a[K])):
        sum += array_b[L] * array2_a[K][L]
    if sum + C > 0: count += 1

print(count)

Solution (Python):
n,m,c = map(int,input().split())
b = list(map(int,input().split()))
a = []
for _ in range(n):
    d = list(map(int,input().split()))
    a.append(d)

ans = 0
for i in range(n):
    tmp = 0
    for j in range(m):
        tmp += b[j]*a[i][j]
    tmp += c
    if tmp > 0:
        ans += 1

print(ans)

Solution (Python):
N,M,C=map(int,input().split())
B = list(map(int,input().split()))
cnt=0
for i in range(N):
    number = list(map(int,input().split()))
    value=0
    for j in range(M):
        value += number[j]*B[j]
    value += C
    if value>0:
        cnt += 1
print(cnt)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
ans = 0

for i in range(N):
    val = 0
    A = list(map(int, input().split()))
    for j in range(M):
        val += A[j]*B[j]
    if val+C > 0:
        ans += 1
print(ans)

Solution (Python):
def main():
    N, M, C = map(int, input().split())
    B = list(map(int, input().split()))
    ans = 0
    for _ in range(N):
        A = list(map(int, input().split()))
        if sum([a * b for a, b in zip(A, B)]) + C > 0:
            ans += 1
    print(ans)


if __name__ == '__main__':
    main()

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
a = [list(map(int, input().split())) for _ in range(n)]

ans = 0
for i in range(n):
    if sum([a[i][j] * b[j] for j in range(m)]) + c > 0:
        ans += 1
print(ans)

Solution (Python):
N, M, C=(int(x) for x in input().split())
B = list(map(int, input().split()))
A = [([] for _ in range(M)) for _ in range(N)]
cou = 0

for i in range(N):
    A[i] = list(map(int, input().split()))

for i in range(N):
    ju=0
    for j in range(M):
        ju += A[i][j]* B[j]
    if (ju + C > 0):
        cou +=1

print(cou)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
A = [list(map(int, input().split())) for _ in range(N)]

def func(B, X):
  res = 0
  for i in range(M):
    res += B[i] * X[i]
  return res
    
  
count = 0
for i in range(N):
  if func(B, A[i]) + C > 0:
    count += 1

print(count)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
count = 0
for i in range(N) :
    sum = 0
    A = list(map(int, input().split()))
    for j in range(M) :
        sum += A[j] * B[j]
    if sum + C > 0 :
        count += 1
print(count)

Solution (Python):
import sys
sys.setrecursionlimit(10**7)
input = sys.stdin.readline

n,m,c = map(int, input().split())
b = list(map(int, input().split()))
a = [list(map(int, input().split())) for _ in range(n)]

ans = 0
for i in range(n):
    tmp = 0
    for j in range(m):
        tmp += b[j] * a[i][j]
    tmp += c
    if tmp > 0:
        ans += 1

print(ans)

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
a, count = [], 0
for _ in range(n):
    a.append(list(map(int, input().split())))
for k in range(n):
    s = 0
    for i, j in zip(a[k], b):
        s += i*j
    if s+c > 0:
        count += 1
print(count)

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))

ans = 0
for i in range(n):
  a = list(map(int, input().split()))
  t = 0
  for j in range(m):
    t += a[j] * b[j]
  t += c
  if t > 0:
    ans += 1
print(ans)

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
a = [0] * n
for i in range(n):
    a[i] = list(map(int, input().split()))
ans = 0

for i in range(n):
    zzz = 0
    for j in range(m):
        zzz += a[i][j] * b[j]
    if zzz > -c:
        ans += 1

print(ans)

Solution (Python):
import numpy as np
N,M,C=map(int,input().split())
B=np.array(input().split(),dtype=np.int32)
A=np.array([input().split() for i in range(N)],dtype=np.int32)
count=sum(((A*B).sum(axis=1)+C)>0)
print(count)

Solution (Python):
import numpy as np
N,M,C=map(int,input().split())
B=np.array(input().split(),dtype=np.int32)
A=np.array([input().split() for i in range(N)],dtype=np.int32)
count=sum((np.dot(A,B)+C)>0)
print(count)

Solution (Python):
import numpy as np
N,M,C=map(int,input().split())
B=np.array(input().split(),dtype=np.int32)
count=0
for i in range(N):
    A=np.array(input().split(),dtype=np.int32)
    if sum(A*B)+C>0:
        count+=1
print(count)

Solution (Python):
N,M,C=map(int,input().split())
B=list(map(int,input().split()))
count=0
for i in range(N):
    A=list(map(int,input().split()))
    if sum([a*b for a,b in zip(A,B)])+C>0:
        count+=1
print(count)

Solution (Python):
N,M,C=map(int,input().split())
B=list(map(int,input().split()))
count=0
for i in range(N):
    A=list(map(int,input().split()))
    score=C
    for j in range(M):
        score+=A[j]*B[j]
    if score>0:
        count+=1
print(count)

Solution (Python):
def resolve():
    n, m, c = map(int, input().split())
    bn = list(map(int, input().split()))
    print(sum([1 for _ in range(n) if sum([a * b for a, b in zip(list(map(int, input().split())), bn)]) + c > 0]))


if __name__ == '__main__':
    resolve()

Solution (Python):
N, M, C = list(map(int, input().split()))
B = list(map(int, input().split()))
A = []

for i in range(N):
  tmp = list(map(int, input().split()))
  A.append(tmp)

test = 0
cnt = 0

for i in range(N):
  for j in range(M):
    test += A[i][j]*B[j]
  if test > -C:
    cnt += 1
  test = 0
print(cnt)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
A = [list(map(int, input().split())) for i in range(N)]
cnt = 0

for i in range(N):
    x = 0
    for j in range(M):
        x += A[i][j] * B[j]
    if x+C > 0:
        cnt += 1

print(cnt)

Solution (Python):
n,m,c=map(int,input().split())
b=list(map(int,input().split()))
a=[list(map(int,input().split())) for i in range(n)]

cnt=0
for i in range(n):
  cntt=0
  for j in range(m):
    cntt+=a[i][j]*b[j]
  if cntt+c>0:
    cnt+=1

print(cnt)

Solution (Python):

def main():
    N, M, C = map(int, input().split())
    B = list(map(int, input().split()))
    cnt = 0
    for i in range(N):
        sum = 0
        A = list(map(int, input().split()))
        for j in range(M):
            sum += A[j]*B[j]
        
        if sum + C > 0:
            cnt += 1
    print(cnt)
if __name__ == '__main__':
    main()