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):
n,m,c = map(int,input().split(" "))

b = list(map(int,input().split(" ")))
result = 0
for i in range(n):
    ai = list(map(int,input().split(" ")))
    temp = c
    for j in range(m):
        temp = temp + (ai[j] * b[j])

    if temp > 0:
        result = result + 1

print(result)

Solution (Python):
import numpy as np

N, M, C = map(int, input().split())
B = np.array([int(i) for i in input().split()])
A = np.array([[int(i) for i in input().split()] for j in range(N)])
res = 0

for row in A:
    if sum(row*B) + C > 0:
        res += 1

print(res)

Solution (Python):
import sys
rr = lambda: sys.stdin.readline().strip()
ri = lambda: int(rr())
rs = lambda: [int(_) for _ in rr().split()]

N, M, C = rs()
B = rs()
A = [rs() for _ in range(N)]

ans = 0

for a in A:
	s = 0
	for i in range(M):
		s += B[i]*a[i]
	if s > -C:
		ans += 1
		
print(ans)

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

Solution (Python):
N,M,C = [int(i) for i in input().split()]
B_list = [int(i) for i in input().split()]
ok_count = 0
for i in range(N) :
    A_list = [int(i) for i in input().split()]
    tmp_sum = 0
    for m in range(M) :
        tmp_sum += A_list[m] * B_list[m]
    
    tmp_sum += C
    if (tmp_sum > 0) :
        ok_count += 1

print(ok_count)

Solution (Python):
n,m,c=(map(int,input().split()))
b=list(map(int,input().split()))
a=[]
e=0
f=0
g=0
for i in range(n):
    d=list(map(int,input().split()))
    for u in range(m):
        e+=b[u]*d[u]
        f+=1
        if f == m:
            e+=c
            a.append(e)
            e=0
            f=0
for q in a:
    if q > 0:
        g+=1
print(g)

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)]
print(len([i for i in range(N) if sum([A[i][j]*B[j] for j in range(M)]) + C > 0]))

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

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

codes = [list(map(int, input().split())) for _ in range(N)]

cnt = 0
for code in codes:

    result = C
    for a,b in zip(code, b_list):
        result += a*b

    if result > 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):
    A = list(map(int, input().split()))
    s = C
    for j in range(M):
        s += A[j] * B[j]
    
    if s > 0:
        ans += 1

print(ans)

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

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

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

ans = 0
for i in range(N):
    sum = C
    for (a, b) in zip(A[i], B):
        sum += a * b
    if sum > 0:
        ans += 1
print(ans)

Solution (Python):
import sys
input = sys.stdin.readline
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):
  condition = 0
  for j in range(M):
    condition += A[i][j] * B[j]
  condition += C
  if (condition > 0):
    ans += 1

print(ans)

Solution (Python):
n, num, diff = map(int, input().split())
b_arr = list(map(int, input().split()))
count = 0
for i in range(n):
  code_arr = list(map(int, input().split()))
  sum_code = sum(b*code for b, code in zip(b_arr, code_arr))
  if 0 < (sum_code + diff):
    count += 1
print(count)

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

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 = (int(j) for j in input().split())
B = [int(j) for j in input().split()]
list = [[0]* M]*N
for j in range(0,N):
        list[j] = [int(k) for k in input().split()]
count = 0
for j in range(0,N):
    if np.sum(np.array(list[j]) * np.array(B)) + C > 0:
        count = count + 1
print(count)

Solution (Python):
N,M,C=map(int,input().split())
b=list(map(int,input().split()))
a=list(range(N))
for i in range(N):
    a[i]=list(map(int,input().split()))
ab=list(range(N))
count=0

for i in range(N):
    ab[i]=0
    for j in range(M):
        ab[i]+=a[i][j]*b[j]
    if ab[i]+C>0:
        count+=1

print(count)

Solution (Python):
n, m, c = map(int, input().split())
b = [int(i) for i in input().split()]
a = [[int(j) for j in input().split()] for i 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)

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

print(cnt)

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

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

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

cc = 0
for v in l:
    t = c
    for vv in zip(b, v):
        t += vv[0] * vv[1]

    if t > 0:
        cc += 1
    
print(cc)

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)])
p = np.dot(b, a.T)
print(np.sum(p + c > 0))

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

ans=0
for i in range(N):
  ab=0
  A = list(map(int,input().split()))
  for j in range(M):
    ab += A[j] * B[j]
  if ab + C > 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())))
ans=0

for i in range(N):
  A=np.array(list(map(int,input().split())))
  if sum(A*B)+C > 0:
    ans+=1
print(ans)

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


def inner_prod(v1, v2):
    return sum([x * y for x, y in zip(v1, v2)])


ans = 0
for a in A:
    if inner_prod(a, B) + C > 0:
        ans += 1
print(ans)

Solution (Python):
if __name__ == '__main__':
    input_list = list(map(int, input().split()))
    N = input_list[0]
    M = input_list[1]
    C = input_list[2]

    B = [0]*(M+1)

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

    answer = 0

    for i in range(N):
        judge_value = 0
        for j in range(M):
            judge_value += A[i][j] * B[j]
        judge_value += C

        if judge_value > 0:
            answer += 1

    print(answer)

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

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

lst1 = list(map(int, input().split()))

ans = 0
for i in range(N):
  lst2 = list(map(int, input().split()))
  sum = 0
  for j in range(M):
    sum += lst1[j] * lst2[j]
  if (sum + 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):
    ab = 0
    A = list(map(int, input().split()))
    for j in range(M):
        ab += A[j] * B[j]
    if ab + 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):
	summ = 0
	a = list(map(int,input().split()))
	for j in range(len(a)):
		summ += a[j]*b[j]
	if summ + c > 0:
		ans += 1
print(ans)

Solution (Python):









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

cnt = 0
for aa in A:
    sum = 0
    for i, a in enumerate(aa):
        sum += B[i] * a

    

    if sum + C > 0:
        cnt += 1

print(cnt)

Solution (Python):
n,m,c=map(int,input().split())
bline=list(map(int,input().split()))
num=0
for i in range(n):
  nm=list(map(int,input().split()))
  inpro=c
  for j in range(m):
    inpro += nm[j] * bline[j]
  if inpro >0:
    num += 1
  else:
    pass
print(num)

Solution (Python):
import numpy as np
n, m, c = list(map(int, input().split()))
b = np.array(list(map(int, input().split())))
ans = 0
for i in range(n):
    a = np.array(list(map(int, input().split())))
    res = sum(a * b) + c
    if res > 0:
        ans += 1

print(ans)

Solution (Python):


from bisect import bisect_left as binl

def intin():
    input_tuple = input().split()
    if len(input_tuple) <= 1:
        return int(input_tuple[0])
    return map(int, input_tuple)


def intina():
    return [int(i) for i in input().split()]


def intinl(count):
    return [intin() for _ in range(count)]


def lcm(x, y):
    while y != 0:
        z = x % y
        x = y
        y = z
    return x





def main():
    n, m, c = intin()
    blist = intina()
    alistlist = []
    for i in range(n):
        alistlist.append(intina())

    count = 0
    for alist in alistlist:
        csum = 0
        for i, a in enumerate(alist):
            csum += a * blist[i]
        csum += c
        if csum > 0:
            count += 1

    print(count)


if __name__ == '__main__':
    main()

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

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()))
    Sum=[C]
    for j in range(M):
        Sum.append(A[j]*B[j])
    if sum(Sum)>0:
        count+=1
print(count)

Solution (Python):
a,b,c =map(int,input().split())
B=list(map(int,input().split()))
A=[]
for i in range(a):
    array =  list(map(int,input().split()))
    A.append(array)
cont=0
sum =0
for i in range(a):
    sum =0
    for j in range(b):
        sum += A[i][j] * B[j]
    if sum  + c> 0:
        cont +=1
print(cont)

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

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

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

Solution (Python):
N,M,C=map(int,input().split())
b=list(map(int,input().split()))
a=[input().split() for i in range(N)]

D=0 
ans=0
for k in range(N):
  for s in range(M):
   D=D+int(a[k][s])*int(b[s])
  if D > -C:
   ans=ans+1 
   D=0
  else:
   ans=ans 
   D=0

print(ans)

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


for i in range(N):
    A=input().split()
    A=[int(k) for k in A]
    
    for j in range(M):
        Sum+=A[j]*B[j]
    
    if 0<Sum+C:
        cnt+=1
    
    Sum=0
    
print(cnt)

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

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
A = [[0]]*N
ans = 0
for i in range(N):
  A[i] = list(map(int, input().split()))
  prod = 0
  for j in range(M):
    prod += A[i][j]*B[j]
  prod+=C
  if prod>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 i in range(n)]
ans=0
cal=0
for j in range(n):
  for k in range(m):
    cal+=a[j][k]*b[k]
  if cal+c>0:
    ans+=1
  cal=0
print(ans)

Solution (Python):
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
ans = 0
for i in range(n):
    s = c
    for x, y in zip(list(map(int, input().split())),b):
        s+=x*y
    if s>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 i in range(n)]


ans = 0
for i in range(n):
    sum = 0
    for j in range(m):
        sum += int(b[j])*int(a[i][j])


        if(j == m-1):
            sum += c

            if(sum > 0):
                ans += 1

print(ans)

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

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

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

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

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

for i in range(n):
    a.append([int(j) for j in input().split()])

for i in range(n):
    sum = c
    for j in range(m):
        sum += a[i][j] * b[j]

    if sum > 0:
        counter += 1

print(counter)

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)]
res=0
for t in a:
    ts=0
    for i in range(m):
        ts+=t[i]*b[i]
    if ts+c>0:
        res+=1
print(res)

Solution (Python):


def solve():
    N, M, C = list(map(int, input().split()))
    B = list(map(int, input().split()))

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

    print(ans)

if __name__ == "__main__":
    solve()

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

print(count)

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 i in range(n)])

print(((a*b).sum(axis=1) + c > 0).sum())

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)])

print(((A*B).sum(axis=1) + C > 0).sum())

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

cnt = 0
for i in range(n):
    _sum = c
    for _b, _a in zip(b, a[i]):
        _sum += _b * _a
    if _sum > 0:
        cnt += 1

print(cnt)

Solution (Python):
n, m, c = map(int,input().split())
blist = list(map(int,input().split()))
alist = []
for i in range(n):
  alist.append(list(map(int,input().split())))
  
ans = 0
for j in range(n):
  su = 0
  for k in range(m):
    su += alist[j][k] * blist[k]
  su += c
  if su > 0:
    ans += 1
    
print(ans)

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

Solution (Python):

import sys
try:
    from math import gcd
except Exception:
    from fractions import gcd


def solve(N: int, M: int, C: int, B: "List[int]", A: "List[List[int]]"):
    ret = 0
    for aa in A:
        if 0 < sum([a * b for (a, b) in zip(aa, B)]) + C:
            ret += 1
    return ret


def main():
    def iterate_tokens():
        for line in sys.stdin:
            for word in line.split():
                yield word
    tokens = iterate_tokens()
    N = int(next(tokens))  
    M = int(next(tokens))  
    C = int(next(tokens))  
    B = [ int(next(tokens)) for _ in range(M) ]  
    A = [ [ int(next(tokens)) for _ in range(M) ] for _ in range(N) ]  
    result = solve(N, M, C, B, A)
    print(result)

if __name__ == '__main__':
    main()

Solution (Python):
N,M,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()])
answer=0
for i in range(N):
  f=C
  for j in range(M):
    f=f+A[i][j]*B[j]
  if f>0:
    answer=answer+1
    
print(answer)

Solution (Python):
[N,M,C] = list(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):
  tmp = C
  for j in range(M):
    tmp += A[i][j]*B[j]
  if tmp > 0:
    ans += 1
print(ans)

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

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

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

cnt = 0
for _ in range(N):
    A = [int(x) for x in input().split()]
    x = C
    for a, b in zip(A, B):
        x += a * b
    if x > 0:
        cnt += 1
print(cnt)

Solution (Python):
n, m, c = 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)
ret = 0
for a1 in a:
    source_sum = 0
    for i in range(len(a1)):
        source_sum += a1[i]*b[i]
    if source_sum + c > 0:
        ret += 1
print(ret)

Solution (Python):
N,M,C=map(int,input().split())
B=list(map(int,input().split()))
ans=0
for n in range(N):
    A=list(map(int,input().split()))
    s=sum([A[i]*B[i] for i in range(M)])+C
    if s>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()))
  sum = 0
  for j in range(M):
    sum += A[j]*B[j]
  if sum+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:
    cal = 0
    for i in range(M):
        cal += a[i]*b[i]
    if cal+C > 0:
        count += 1

print(count)

Solution (Python):
from sys import stdin

N,M,C = [int(x) for x in stdin.readline().rstrip().split()]
B = [int(x) for x in stdin.readline().rstrip().split()]
raw_data = [stdin.readline().rstrip().split() for _ in range(N)]
data = [list(map(int, x)) for x in raw_data]

result = 0
for i in range(N):
  a = sum([x*y for x,y in zip(B, data[i])]) + C
  if a > 0:
    result += 1
  else:
    result += 0

print(result)

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

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

B = []
for i in input().split():
    B.append(int(i))

total = 0
for j in range(N):
    A = []
    for k in input().split():
        A.append(int(k))

    tmp = 0
    for l in range(M):
        tmp += B[l] * A[l]

    tmp += C
    if tmp > 0 :
        total += 1

print(total)

Solution (Python):
N, M, C = map(int, input().split())
B = list(map(int, input().split()))
i = 0
count = 0
while i < N:
    A = list(map(int, input().split()))

    j = 1
    ans = C
    while j <= M:
        ans +=  A[j-1] * B[j-1]
        j += 1

    if ans > 0:
        count += 1
    i += 1
print (count)

Solution (Python):
def sei(a):
  v=[]
  for i in a.split():
    v+=[int(i)]
  return v
a=sei(input())
b=sei(input())
ans=0
for i in range(a[0]):
  xx=a[2]
  lis=sei(input())
  for s in range(len(lis)):
    xx+=b[s]*lis[s]
  if xx>0:
    ans+=1
print(ans)

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

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

result = 0

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

print(result)

Solution (Python):


def main():
    N,M,C = map(int,input().split())
    B = list(map(int,input().split()))
    
    ans = 0
    for i in range(N):
        temp_A = list(map(int,input().split()))
        temp = 0
        for j in range(M):
            temp += temp_A[j]*B[j]
        if temp + 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()))
count = 0

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

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

b_data = list(map(int,input().split()))
res = 0
for i in range(N):
  ans = sum([x*y for x, y in zip(b_data,list(map(int,input().split())))])
  if ans+C > 0:
    res += 1
print(res)

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

Solution (Python):
N,M,C = map(int,input().split())
B = list(map(int,input().split()))
sum = 0
cnt = 0
for i in range(N):
    A = list(map(int,input().split()))
    sum = 0
    for j in range(M):
        sum += A[j] * B[j]
    if sum + C > 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):
    a=list(map(int,input().split()))
    tmp=0
    for j in range(M):
        tmp+=a[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 = [[int(i) for i in input().split()] for i in range(n)]
B = np.array(b).reshape(m,1)
cnt = 0
for i in range(n):
    x = np.dot(A[i], B)+c
    if x >0:
    	cnt += 1

print(cnt)

Solution (Python):
n,m,c=map(int,input().split())
blist = [int(i) for i in input().split()]
counter = 0
for i in range(n):
    summ = 0
    alist = [int(ii) for ii in input().split()]
    for j in range(m):
        summ+=alist[j]*blist[j]
    summ+=c
    if summ>0:
        counter+=1
print(counter)

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

count = 0
for i in range(H):
    naiseki = [x * y for x,y in zip(B,A[i])]
    if sum(naiseki,C) > 0:
        count += 1

print(count)

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

print(cnt)

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

print(num)

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 = np.array(B)
A = np.array(A)
vec = A.dot(B) + C
ans = np.sum(vec > 0)
print(ans)

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

Solution (Python):
N,M,C = map(int,input().split())
b = list(map(int,input().split()))
a = [input().split() for l in range(N)]
ai = C
count = 0
num = []
for i in range (N):
  for j in range (M):
    ai = ai + int(a[i][j])*b[j]
  num.append(ai)
  ai = C
for k in range (N):
  if num[k] > 0:
    count = count + 1
  else:
    count = count
    
print(count)

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 i in range(M):
        val += A[i-1]*B[i-1]
    if val + C > 0:
        ans += 1

print(ans)

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

count = 0
for _ in range(N):
	count += (0 < sum(x * y for x, y in zip(tuple(map(int, input().split())), B)) + C)

print(count)

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

count = 0
for a in A:
	j = 0
	for ta, b in zip(a, B):
		j += ta * b
	if 0 < j + C:
		count += 1

print(count)

Solution (Python):
N,M,C = list(map(int,input().split()))
b = list(map(int,input().split()))
count = 0
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:
		count+=1
print(count)

Solution (Python):
N,M,C = list(map(int,input().split()))
b = list(map(int,input().split()))
count = 0
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:
		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()))
    ssum = sum([A[i] * B[i] for i in range(M)]) + C
    if ssum > 0:
        ans += 1
print(ans)

Solution (Python):

n, m, c = list(map(int, input().rstrip().split()))
lst = [list(map(int, input().rstrip().split())) for _ in range(n + 1)]
count = 0

for i in range(1, n + 1):
    total = 0
    for j in range(m):
        total += lst[i][j] * lst[0][j]
    if total + c > 0:
        count += 1

print(count)

Solution (Python):
import numpy as np

N, M, C = [int(x) for x in input().split()]
B = np.array([int(x) for x in input().split()])

count = 0
for i in range(N):
  A = np.array([int(x) for x in input().split()])
  if np.dot(A, B) + C > 0:
    count += 1
  
print(count)

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

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

Solution (Python):



N, M, C = map(int, raw_input().split())

Blist = [map(int, raw_input().split())]
Alist = [map(int, raw_input().split()) for i in range(0, N)]




count = 0

for x in range(N):
    AB = [x * y for (x, y) in zip(Blist[0], Alist[x])]
    
    ans = sum(AB) + C
    
    if ans > 0:
        count += 1

print(count)

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()))
    sum=c
    for a_i,b_i in zip(A,B):
        sum+=a_i*b_i
    if sum>0:
        ans+=1
print(ans)

Solution (Python):
import sys
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)]

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

print(count)