Submission #1199819

#TimeUsernameProblemLanguageResultExecution timeMemory
1199819ofozTopical (NOI23_topical)Pypy 3
12 / 100
1079 ms577728 KiB
from sys import stdout, setrecursionlimit
from math import ceil, floor, sqrt, comb
from collections import deque

def higher(a: list[int], b: list[int]):
    for i in range(len(a)):
        if a[i] > b[i]: return 1
        if b[i] > a[i]: return 0

    return 1

def solve():
    n, k = map(int, input().split(" "))
    cur = [0] * k
    a = []
    b = []
    for i in range(n): a.append((list(map(int, input().split(" "))), i))
    for _ in range(n): b.append(list(map(int, input().split(" "))))
    nxt = []
    res = 0

    
    for _ in range(n):
        found = False
        for (arr, i) in a:
            if found:
                nxt.append((arr, i))
                continue


            if higher(cur, arr):
                for j in range(k): cur[j] += b[i][j]
                found = True
                res += 1
                continue
            nxt.append((arr, i))
        a = nxt.copy()
    print(res)




solve()
 

Compilation message (stdout)

Compiling 'Main.py'...

=======
  adding: __main__.pyc (deflated 36%)

=======
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...