Submission #22547101


Source Code Expand

import sys

sys.setrecursionlimit(2 ** 20)

input = sys.stdin.readline


def main():
    n = int(input()) * 2
    a = list(map(int, input().split()))
    delta = [[abs(i - j) for j in a] for i in a]
    memo = [[-1 if i != j else 0 for j in range(n + 1)] for i in range(n + 1)]

    def solve(l, r):
        if memo[l][r] != -1:
            return memo[l][r]
        memo[l][r] = min(solve(l + 1, j) + solve(j + 1, r)
                         + delta[l][j] for j in range(l + 1, r, 2))
        return memo[l][r]

    print(solve(0, n))


if __name__ == "__main__":
    main()

Submission Info

Submission Time
Task 019 - Pick Two(★6)
User riantkb
Language Python (3.8.2)
Score 6
Code Size 576 Byte
Status AC
Exec Time 1430 ms
Memory 17832 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 26 ms 9048 KiB
00_sample_1.txt AC 18 ms 9000 KiB
00_sample_2.txt AC 22 ms 9120 KiB
00_sample_3.txt AC 19 ms 9124 KiB
01_cornar_0.txt AC 20 ms 9124 KiB
01_cornar_1.txt AC 20 ms 9052 KiB
01_cornar_2.txt AC 202 ms 11144 KiB
02_random_0.txt AC 256 ms 11676 KiB
02_random_1.txt AC 71 ms 9772 KiB
02_random_2.txt AC 91 ms 10088 KiB
02_random_3.txt AC 1219 ms 17100 KiB
03_maxima_0.txt AC 1423 ms 17740 KiB
03_maxima_1.txt AC 1408 ms 15184 KiB
03_maxima_2.txt AC 1430 ms 17832 KiB