Submission #22546963


Source Code Expand

import sys
import numpy as np

input = sys.stdin.readline


def solve(a):
    n = a.shape[0]
    dp = np.zeros((n + 1, n + 1), dtype=np.int32)
    delta = np.abs(a.reshape((1, n)) - a.reshape((n, 1)))

    for k in range(2, n + 1, 2):
        for i in range(n + 1 - k):
            dp[i][i + k] = np.min(dp[i + 1, i + 1: i + k: 2]
                                  + dp.T[i + k, i + 1 + 1: i + k + 1: 2]
                                  + delta[i, i + 1: i + k: 2])

    return dp[0, n]


def main():
    _ = int(input())
    a = np.array(list(map(int, input().split())), dtype=np.int32)
    print(solve(a))


if __name__ == "__main__":
    main()

Submission Info

Submission Time
Task 019 - Pick Two(★6)
User riantkb
Language Python (3.8.2)
Score 6
Code Size 649 Byte
Status AC
Exec Time 401 ms
Memory 28292 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 6 / 6
Status
AC × 4
AC × 14
Set Name Test Cases
Sample 00_sample_0.txt, 00_sample_1.txt, 00_sample_2.txt, 00_sample_3.txt
All 00_sample_0.txt, 00_sample_1.txt, 00_sample_2.txt, 00_sample_3.txt, 01_cornar_0.txt, 01_cornar_1.txt, 01_cornar_2.txt, 02_random_0.txt, 02_random_1.txt, 02_random_2.txt, 02_random_3.txt, 03_maxima_0.txt, 03_maxima_1.txt, 03_maxima_2.txt
Case Name Status Exec Time Memory
00_sample_0.txt AC 118 ms 26932 KiB
00_sample_1.txt AC 111 ms 26692 KiB
00_sample_2.txt AC 110 ms 27168 KiB
00_sample_3.txt AC 112 ms 26712 KiB
01_cornar_0.txt AC 108 ms 27108 KiB
01_cornar_1.txt AC 114 ms 27012 KiB
01_cornar_2.txt AC 176 ms 27264 KiB
02_random_0.txt AC 188 ms 27260 KiB
02_random_1.txt AC 140 ms 27224 KiB
02_random_2.txt AC 144 ms 27148 KiB
02_random_3.txt AC 352 ms 28120 KiB
03_maxima_0.txt AC 401 ms 28056 KiB
03_maxima_1.txt AC 384 ms 28292 KiB
03_maxima_2.txt AC 384 ms 28232 KiB