Submission #22547107


Source Code Expand

import sys
from functools import lru_cache

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]

    @lru_cache(maxsize=None)
    def solve(l, r):
        if r - l == 0:
            return 0
        return min(solve(l + 1, j) + solve(j + 1, r)
                   + delta[l][j] for j in range(l + 1, r, 2))

    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 505 Byte
Status AC
Exec Time 1089 ms
Memory 22064 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 27 ms 9296 KiB
00_sample_1.txt AC 22 ms 9292 KiB
00_sample_2.txt AC 27 ms 9300 KiB
00_sample_3.txt AC 25 ms 9348 KiB
01_cornar_0.txt AC 20 ms 9452 KiB
01_cornar_1.txt AC 21 ms 9300 KiB
01_cornar_2.txt AC 157 ms 12232 KiB
02_random_0.txt AC 192 ms 13444 KiB
02_random_1.txt AC 64 ms 10580 KiB
02_random_2.txt AC 74 ms 10956 KiB
02_random_3.txt AC 924 ms 20808 KiB
03_maxima_0.txt AC 1086 ms 22064 KiB
03_maxima_1.txt AC 1080 ms 19504 KiB
03_maxima_2.txt AC 1089 ms 22004 KiB