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 scipy as sp


num_of_CA = 0

N, M, C = list(map(int, input().split()))
B_list = sp.array(list(map(int, input().split())))

for i in range(N):
    A_list = sp.array(list(map(int, input().split())))
    if sp.sum(A_list*B_list)+C > 0:
        num_of_CA += 1

print(num_of_CA)

Solution (Python):

N, M, C = map(int, input().split())
B = list(map(int, input().split()))
A = []
count = 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:
        count = count + 1
print(count)

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

Solution (Python):
N, M, C = tuple(map(int, input().split()))
b_list = list(map(int, input().split()))
a_list = [list(map(int, input().split())) for _ in range(N)]
correct = 0
for a in a_list:
  mul = sum([x * y for x, y in zip(b_list, a)])
  if mul + C > 0:
    correct += 1
print(correct)

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

Solution (Python):
def main():
    N, M, C = map(int, input().split())
    B = [int(number) for number in input().split()]
    A = []
    A = [[int(m) for m in input().split()] for n in range(N)]

    num_of_clear = 0
    for list_a in A:
        sum_num = 0
        for index, a in enumerate(list_a):
            sum_num += a * B[index]
        sum_num += C
        if sum_num > 0:
            num_of_clear += 1

    print(num_of_clear)


if __name__ == '__main__':
    main()

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

B_box = []
ans = 0
count = 0


for _ in input().split():
    B_box.append(int(_))

for i in range(N):
    count_num=0
    for j in input().split():
        j = int(j) 
        count += j * B_box[count_num]
        count_num += 1
    count = count + C
    if count > 0:
        ans += 1
    count = 0
        
print(ans)

Solution (Python):



import sys
import math





n, m, c = list(map(int, input().split()))


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

ret = 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:
        ret += 1


print(ret)

Solution (Python):
Stat=input().split()
B=input().split()
ans=0
for i in range(int(Stat[0])):
    A = []
    A=input().split()
    S=0
    for j in range(int(Stat[1])):
        S=S+int(A[j])*int(B[j])
    if S+int(Stat[2]) > 0:
        ans=ans+1
print(ans)

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

ans = int(0)

b = [int(i) for i in input().split()]

for k in range(n):
	aaa = 0
	a = [int(i) for i in input().split()]

	for j in range(m):
		aaa += a[j]*b[j]
	if aaa + 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 i in range(n)]
ans=0
for i in range(n):
  s=c
  for j in range(m):
    s+=b[j]*a[i][j]
  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 _ 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=input().split()
for i in range(M):
    B[i]=int(B[i])
count=0
for i in range(N):
    A=input().split()
    for i in range(M):
        A[i]=int(A[i])
    K=C
    for i in range(M):
        K+=A[i]*B[i]
    if K>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 i in range(N)]

ans = 0
for i in range(N):
    s = 0
    for j in range(M):
        s += A[i][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 = []
for i in range(n):
    a.append(list(map(int, input().split())))
ans = 0
condition = [0 for i in range(n)]
for i in range(n):
    condition[i] = 0
    for j in range(m):
        condition[i] += a[i][j]*b[j]
    condition[i] += c
print(len([i for i in condition if i > 0]))

Solution (Python):
import numpy as np
N,M,C = map(int,input().split())
B_s = np.array(list(map(int,input().split())))
A_s = []
for _ in range(N):
  A_s.append(list(map(int,input().split())))
A_s = np.array(A_s)

print(int(np.sum(np.where((np.dot(A_s,B_s)+C)>0,1,0))))

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

Solution (Python):
N,M,C = list(map(int, input().split()))
Bs = list(map(int, input().split()))
As = []
for _ in range(N):
    As.append(list(map(int, input().split())))
counter = 0
for n in range(N):
    if sum([a * Bs[i] for i, a in enumerate(As[n])]) + C > 0:
        counter += 1
print(counter)

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

Solution (Python):
import numpy as np
n, m, c = map(int, input().split())
b = np.array([int(x) for x in input().split()])
a = np.array([[int(x) for x in input().split()] for y in range(n)])
ans = (np.dot(a, b) + c) > 0
print(np.count_nonzero(ans))

Solution (Python):
import numpy as np

N,M,C = map(int,input().split())
B = input().split()
B = np.array([int(x) for x in B])
A = []
for i in range(N):
    A.append(input().split())

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

print(cnt)

Solution (Python):
N,M,C = [int(x) for x in input().split(' ')]
B =  [int(x) for x in input().split(' ')]
A=[]
for n in range(N):
    A.append([int(x) for x in input().split(' ')])

valid_count = 0
for n in range(N):
    score = 0
    for m in range(M):
        score += A[n][m]*B[m]
    if score + C > 0:
        valid_count +=1
print(valid_count)

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

bl = [int(k) for k in input().split()] 
count = 0

for i in range(n):
    ans = c
    a = [int(k) for k in input().split()] 
    
    for j in range(m):
        ans += a[j] * bl[j]
    if ans > 0:
        count += 1

print(count)

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

bl = [int(k) for k in input().split()] 
count = 0

for i in range(n):
    ans = c
    a = [int(k) for k in input().split()] 
    
    for j in range(m):
        ans += a[j] * bl[j]
    if ans > 0:
        count += 1

print(count)

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

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

def check(i):
    ANS=C
    for j in range(M):
        ANS+=A[i][j]*B[j]

    

    if ANS>0:
        return 1
    else:
        return 0
        
    return 1

SUM=0
for i in range(N):
    SUM+=check(i)

print(SUM)

Solution (Python):
import numpy as np

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

B = np.array(list(map(int, input().split())))

cnt = 0

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

print(cnt)

Solution (Python):
a,b,c = map(int, input().split())
integer=list(map(int,input().split()))
q_list=[]
ok=0
for x in range(a):
    q_list+=[list(map(int,input().split()))]
for y in range(a):
    ans=0
    for z,p in zip(q_list[y],integer):
        ans+=z*p
    ans+=c
    if ans>0:
        ok+=1
print(ok)

Solution (Python):
def getN():
    return int(input())
def getNM():
    return list(map(int, input().split()))
def getList():
    return list(map(int, input().split()))

n,m,c = getList()
ans = 0
bnums = getList()

for i in range(n):
    tmp = 0
    anums = getList()
    for a,b in zip(anums,bnums):
        tmp += a*b

    if tmp + c > 0:
        ans += 1

print(ans)

Solution (Python):
import numpy as np
N, M, C = [int(_) for _ in input().split()]
B = np.array([int(_) for _ in input().split()] + [C])
A = np.array([[int(_) for _ in input().split()] + [1] for _0 in range(N)])
scores = A.dot(B)
print(scores[scores>0].size)

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

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

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

print(result)

Solution (Python):

"""
Created on Sat Mar  9 21:07:57 2019

@author: iwata
"""

N,M,C = map(int, input().split())
listb = list(map(int, input().split()))
count = 0

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

Solution (Python):
from operator import mul

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

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

    all_A = []
    clear_count = 0
    cal = 0

    for i in range(N):
        A = list(input().split(' '))
        for j in range(M):
            A[j] = int(A[j])
        all_A.append(A)

    

    for A in all_A:
        cal = 0
        for i in range(M):
            cal += A[i] * B[i]
        cal += C
        
        if cal > 0:
            clear_count += 1

    print(clear_count)


if __name__ == '__main__':
    main()

Solution (Python):


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

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

Solution (Python):
import numpy as np

N, M, C = map(int, input().split())
B = list(map(int, input().split()))
B.append(C)
B_array = np.array(B).T
A = []
for i in range(N):
    a = list(map(int, input().split()))
    a.append(1)
    A.append(a)
A_array = np.array(A)

result = np.dot(A, B)
print(np.sum(result > 0))

Solution (Python):
from sys import stdin


def a(input_string):
    one = input_string[0]
    two = input_string[1]
    three = input_string[2:]
    N, M, C = [int(x) for x in one.split()]
    B = [int(x) for x in two.split()]
    temp = [string.split() for string in three]
    A = []
    for i in range(len(temp)):
        A.append([int(word) for word in temp[i]])
    
    
    
    count = 0
    for i in range(N):
        product_sum = 0
        for a, b in (zip(A[i], B)):
            product_sum += a*b
        if product_sum + C > 0:
            count += 1
    return count


def main():
    input_line = stdin.readlines()
    answer = a(input_line)
    print(answer)


if __name__ == '__main__':
    main()

Solution (Python):


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

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

print(b)

Solution (Python):



"""
Can you solve this?
"""

def main():
    """
    inputしたらすぐに計算して合否を判断、
    正解数を1増やす。
    """
    N, M, C = map(int, input().split())
    B = list(map(int, input().split()))

    counter = 0  
    temp_answer = 0

    for _ in range(N):
        temp_answer = 0
        A = list(map(int, input().split()))

        for i in range(M):
            temp_answer += A[i] * B[i]

        if temp_answer + C > 0:
            counter += 1

    print(counter)


if __name__ == '__main__':
    main()

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

Solution (Python):


import sys

def parse_input(lines_as_string = None):


    lines = []
    if lines_as_string is None:
        lines.append(input())
        tokens = lines[0].split(" ")
        n = int(tokens[0])
        m = int(tokens[1])
        c = int(tokens[2])
        lines.append(input())
        for i in range(n):
            lines.append(input())

    else:
        lines = [e for e in lines_as_string.split("\n")][1:-1]
        tokens = lines[0].split(" ")
        n = int(tokens[0])
        m = int(tokens[1])
        c = int(tokens[2])

    b = [int(e) for e in lines[1].split(" ")]
    
    a = []
    for i in range(n):
        a.append([int(e) for e in lines[i+2].split(" ")])

    return (n, m, c, b, a)


def solve(n, m, c, b, a):

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

    return count

def main():
    

    print("%s" % solve(*parse_input()))

if __name__ == '__main__':

    main()

Solution (Python):


code = list(map(int, input().split(" ")))

M = code[1]
C = code[2]

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


ans = 0

for i in range(code[0]):
    tC = 0
    A = list(map(int, input().split(" ")))

    for j in range(M):
        tC = tC + B[j] * A[j]

    if 0 < tC + C:
        ans = ans + 1

print(ans)

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

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

ans = 0

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

print(ans)

Solution (Python):
x,y,z = map(int,input().split())

ans=0
first = list(map(int,input().split()))
for i in range(x):
    num=0
    A= list(map(int,input().split()))
    for t in range(y):
        num=num + int(A[t])*int(first[t])
    if (num+z)>0:
        ans=ans+1
    else:
        ans = ans
    

print(ans)

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())))
x = 0
for i in range(n):
    y = sum([p*q for p,q in zip(a[i],b)]) + c
    if y > 0:
        x += 1
print(x)

Solution (Python):
i = list(map(int, input().split()))
N = i[0]
M = i[1]
C = i[2]
B = list(map(int, input().split()))

A = [list(map(int, input().split())) for l in range(N)]
sum = 0
tom = 0
count = 0

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

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

print(cnt)

Solution (Python):
rr = lambda: input().strip()
rrm = lambda: list(map(int, rr().split()))

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

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

Solution (Python):
import numpy as np

N,M,C=map(int, input().split())
B_lst=list(map(int, input().split()))
A_lst=[]
for _ in range(N):
    A_lst.append(list(map(int, input().split())))

A=np.array(A_lst)
B=np.array(B_lst)

print(sum(((np.dot(A, B)+C)>0)*1))

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

Solution (Python):
n,m,c = [int(i) for i in input().split()]
e = [[int(i) for i in input().split()] for i in range(1+n)]

count=0
for j in range(1,n+1):
  tmp=0
  for i in range(0,m):
    tmp+=e[j][i]*e[0][i]

  if tmp+c>0:
    count+=1
    
print(count)

Solution (Python):
N, M, C = map(int, raw_input().split())
B = map(int, raw_input().split())
count = 0
for i in xrange(N):
    A = map(int, raw_input().split())
    val = C
    for idx in xrange(M):
        val += A[idx]*B[idx]
    if val > 0: count += 1

print count

Solution (Python):
import numpy as np

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

cnt = 0
for i in range(N):
    judge = sum(np.array(B_list) * np.array(A_list[i])) + C
    if judge > 0:
        cnt += 1
print(cnt)

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

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

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

cnt = 0
for a_list in A:
    sum = 0
    for a, b in zip(a_list, B):
        sum += a*b
    if sum + C > 0:
        cnt += 1

print(cnt)

Solution (Python):
import numpy as np

N, M, C = map(int, input().split())
b_array = np.array([int(v) for v in input().split()]).reshape(1,-1)

a_array = np.array([int(v) for v in input().split()]).reshape(1, -1)
for n in range(N-1):
    a_add = np.array([int(v) for v in input().split()]).reshape(1, -1)
    a_array = np.concatenate((a_array, a_add), axis=0)
    
ab_array = (a_array * b_array).sum(axis=1) + C

print(np.sum(ab_array>0))

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

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

Solution (Python):
inData = input().split(' ')
N = int(inData[0])
M = int(inData[1])
ZERO = 0
seisuC = int(inData[2])
seisuB = input().split(' ')
ansCnt = 0
for i in range(0, N):
    inData2 = input().split(' ')
    calc = 0
    for j in range(0, len(inData2)):
        calc += (int(inData2[j]) * int(seisuB[j]))
    calc += seisuC
    if calc > ZERO:
        ansCnt += 1

print(ansCnt)

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

Solution (Python):
from functools import reduce
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 = reduce(lambda x,y:x+y,[ a*b for a,b in zip(A,B) ]) + C 
    if s > 0:
        ans += 1

print(ans)

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

for i in range(N):
    a=0
    for j in range(M):
        a+=A[i][j]*B[j]
    if a+C>0:
        ct+=1
    else:
        pass
print(ct)

Solution (Python):
def f(a, b):
    ret = 0
    for i in range(len(a)):
        ret += a[i]*b[i]
    return ret
n, m, c = map(int, input().split())
b = list(map(int, input().split()))
print(len(list(filter(lambda x : f(x, b)+c>0, [list(map(int, input().split())) for i in range(n)]))))

Solution (Python):
import numpy as np


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


B = [int(x) for x in input().split()]
B = np.array(B)


A = []
for n in range(N):
  A.append([int(x) for x in input().split()])
A = np.array(A)


D = np.dot(A,B)+C


n = 0
for d in D:
  if d>0:
    n += 1
print(n)

Solution (Python):


import numpy as np
N, M, C = (int(i) for i in input().split()) 
B = np.array([[int(i) for i in input().split()] for i in range(1)][0])
e = np.array([[int(i) for i in input().split()] for i in range(N)])



c_2 = np.count_nonzero((np.sum(e*B, axis=1)+C)>=1)
print(c_2)

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 p in a:
  if sum(i*j for i,j in zip(p,b)) + c > 0:
    res += 1
print(res)

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

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

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

counter = 0

for i in range(N):
  A = [int(i) for i in input().split()]
  index = 0
  for j in range(M):
    index += A[j]*B[j]
  if index + C > 0:
    counter += 1

print(counter)

Solution (Python):


"""
Created on Tue Feb 26 17:52:43 2019

@author: nakamuratakayuki
"""

N, M, C = tuple(map(int, input().split()))
B_list = list(map(int, input().split()))
B_list.insert(0, 0)
A_list = [0]
for i in range(N):
    A_list.append(list(map(int, input().split())))
c = 0

for i in range(1,N+1):
    d = 0
    for j in range(1,M+1):
        d += A_list[i][j-1]*B_list[j]
    d += C
    if 0 < d:
        c += 1

print(c)

Solution (Python):
n, m, c = map(int, input().split())
b_list = list(map(int,input().split()))
a_list = []
d_list = []
for i in range(n):
    d_list = list(map(int,input().split()))
    a_list.append(d_list)

ans_count = 0
for i in range(n):
    const = 0
    for j in range(m):
        const = const + a_list[i][j] * b_list[j]
    const = const + c
    if const > 0:
        ans_count = ans_count + 1

print(ans_count)

Solution (Python):
N = list(map(int, input().split()))
B = list(map(int, input().split()))
A =[list(map(int,input().split())) for i in range(N[0])]
counter=0
amount=0
for i in range(N[0]):  
    for j in range(N[1]):  
        amount += A[i][j]*B[j]
    if (amount + N[2])>0:
        counter += 1
    amount = 0

print(counter)

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

Solution (Python):

def B():
    NMC = input().split()
    N = int(NMC[0])
    M = int(NMC[1])
    C = int(NMC[2])
    B = [int(i) for i in input().split()]
    A = []
    for i in range(N):
        A.append([int(a) for a in input().split()])

    acc = 0
    for i in range(N):
        clear = False
        eq = 0

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

    print (acc)

if __name__ == '__main__':
    
    B()

Solution (Python):
N, M, C = map(int, input().split())
Bs = list(map(int, input().split()))
ans = 0
for n in range(N):
  As = list(map(int, input().split()))
  score = C
  for a, b in zip(As, Bs):
    score += a * b
  ans += score > 0
print(ans)

Solution (Python):



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

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

Solution (Python):
inp=list(map(int,input().split()))
b=list(map(int,input().split()))
n=inp[0]
m=inp[1]
c=inp[2]
wa=0
seikai=0
for i in range(n):
  retu= list(map(int,input().split()))
  for j in range(m):
    kake=retu[j]*b[j]
    wa=wa+kake
  if wa+c>0:
    seikai=seikai+1
  wa=0
print(seikai)

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

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

Solution (Python):
N, M, C = map(int, input().split())
Bm = list(map(int, input().split()))
n = 1
ans = 0
while n <= N:
    An = list(map(int, input().split()))
    sum = 0
    for i in range(0, M):
        sum += An[i] * Bm[i]
    if sum + C > 0:
        ans += 1
    n += 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)]
ans = 0
for ai in a:
    absum = 0
    for i in range(m):
        absum += ai[i] * b[i]
    if absum + c > 0:
        ans += 1
print(ans)

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

print(len(list(filter(lambda n: sum([A[n][m] * B[m] for m in range(M)]) + C > 0, range(N)))))

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




c = 0
for i in range(N):
    g = 0
    for aa,bb in zip(a[i],b):
        g += aa*bb
    g += C
    
    if g > 0:
        c += 1
print(c)

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):
  ip = C
  for j in range(M):
    ip += B[j] * A[i][j]
  if ip > 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()))
    k=c
    for j in range(m):
        k+=a[j]*b[j]
    if k>0:
        ans+=1
print(ans)

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

Solution (Python):
import sys
from operator import mul
 
N,M,C = sys.stdin.readline().strip().split()
N = int(N)
M = int(M)
C = int(C)
 
B_list = sys.stdin.readline().strip().split()


for i in range(len(B_list)):
    B_list[i] = int(B_list[i])



A_list = []
for i in range(N):
    tmp = sys.stdin.readline().strip().split()
    A_list.append(tmp)

for i in range(len(A_list)):
    for j in range(len(A_list[i])):
        A_list[i][j] = int(A_list[i][j])



cnt = 0
for k in range(N):
    combined = [A * B for (A, B) in zip(A_list[k], B_list)]
    calc = sum(combined) + C
    if(calc>0):
        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):
    summ = C
    A = list(map(int, input().split()))
    for j in range(M):
        summ += B[j]*A[j]
    if(summ > 0): cnt+= 1
print(cnt)

Solution (Python):
n,m,c=map(int,input().split())
b=list(map(int,input().split()))
a=[map(int,input().split()) for _ in range(n)]
ans=0
for x in a:
  ans+=(1 if sum(map(lambda y,z:y*z,x,b))>-c else 0)
print(ans)

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

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

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

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

Solution (Python):

import numpy as np

N, M, C = (int(i) for i in input().split())
e = [[int(i) for i in input().split()] for i in range(N+1)]

B = np.array(e[0])
A = np.array(e[1:])


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

Solution (Python):
N, M, C = map(int, input().split(' '))
B = []
for b in input().split(' '):
  B.append(int(b))
A = []
for n in range(N):
  A_n = []
  for a in input().split(' '):
    A_n.append(int(a))
  A.append(A_n)
 

ans = 0
for A_i in A:
  eq = 0
  for m in range(M):
    eq += A_i[m]*B[m]
  eq += C
  if eq>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()))
    v = 0
    for j in range(m):
        v += a[j]*b[j]
    if v + c > 0:
        ans+=1
print(ans)