115762024-10-27 12:17:04balintCsúcsokpython3Wrong answer 16/100186ms18476 KiB
def main():
    N, M = map(int, input().split())
    A = list(map(int, input().split()))
    B = list(map(int, input().split()))

    # Create the height matrix H[i][j] = A[i] * B[j]
    # heights = [[A[i] + B[j] for j in range(M)] for i in range(N)]
    peaks = 0
    def height(i, j):
        return (A[i] + B[j] if 0 <= i < N and 0 <= j < M else 0)
    
    def is_peak(a,b,c,d,e,f,g,h,i):
        return e > max(a, b, c, d, f, g, h, i)
        # return e > a and e > b and e > c and e > d and e > f and e > g and e > h and e > i

    
    # Iterate through each cell to check for peaks
    a, b, c, d, e, f, g, h, i = 0, 0, 0, 0, height(0,0), height(0,1), 0, height(1,0), height(1,1) 
    peaks += is_peak(a,b,c,d,e,f,g,h,i)

    # Iterate from top to bottom (each iteration left to right, down, right to left, down)
    for N_i in range(0, N, 2):
        # scroll right
        for M_i in range(M-1):
            a,b,c = b,c, height(N_i-1, M_i+2)
            d,e,f, = e,f, height(N_i, M_i+2)
            g,h,i = h,i, height(N_i+1, M_i+2)

            peaks += is_peak(a,b,c,d,e,f,g,h,i)

        # reached end at bottom right
        if height(N_i+2, M_i+2) == 0:
            break

        # scroll down
        a,b,c = d,e,f
        d,e,f = g,h,i
        g,h,i = height(N_i+2, M_i), height(N_i+2, M_i+1), height(N_i+2, M_i+2)
        peaks += is_peak(a,b,c,d,e,f,g,h,i)

        # scroll left
        for M_i in range(M_i, -1, -1):
            a,b,c = height(N_i, M_i-1),a,b
            d,e,f, = height(N_i+1, M_i-1), d,e
            g,h,i = height(N_i+2, M_i-1), g,h

            peaks += is_peak(a,b,c,d,e,f,g,h,i)

        # reached end at bottom left
        if height(N_i+3, M_i-1) == 0:
            break

        # scroll down
        a,b,c = d,e,f
        d,e,f = g,h,i
        g,h,i = height(N_i+3, M_i-1), height(N_i+3, M_i), height(N_i+3, M_i+1)
        peaks += is_peak(a,b,c,d,e,f,g,h,i)

    print(peaks)
# Call the main function
main()
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted17ms3236 KiB
2Wrong answer17ms3128 KiB
subtask216/16
3Accepted148ms14724 KiB
4Accepted143ms13160 KiB
5Accepted136ms5724 KiB
6Accepted146ms14712 KiB
7Accepted145ms14852 KiB
8Accepted141ms14412 KiB
subtask30/33
9Wrong answer18ms3384 KiB
10Accepted18ms3364 KiB
11Wrong answer18ms3380 KiB
12Wrong answer17ms3384 KiB
13Runtime error17ms3464 KiB
14Wrong answer17ms3276 KiB
15Wrong answer17ms3268 KiB
subtask40/51
16Wrong answer180ms17928 KiB
17Wrong answer160ms15208 KiB
18Accepted185ms18076 KiB
19Wrong answer46ms14788 KiB
20Wrong answer160ms14872 KiB
21Wrong answer186ms17892 KiB
22Wrong answer179ms18476 KiB
23Accepted172ms17532 KiB
24Wrong answer184ms17804 KiB