結果
問題 | No.771 しおり |
ユーザー | McGregorsh |
提出日時 | 2023-07-06 12:45:55 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,933 ms / 2,000 ms |
コード長 | 1,898 bytes |
コンパイル時間 | 164 ms |
コンパイル使用メモリ | 81,920 KB |
実行使用メモリ | 193,488 KB |
最終ジャッジ日時 | 2024-07-20 07:57:48 |
合計ジャッジ時間 | 29,357 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 1,790 ms
193,408 KB |
testcase_01 | AC | 317 ms
100,608 KB |
testcase_02 | AC | 137 ms
88,448 KB |
testcase_03 | AC | 140 ms
88,448 KB |
testcase_04 | AC | 144 ms
88,580 KB |
testcase_05 | AC | 140 ms
88,704 KB |
testcase_06 | AC | 143 ms
88,224 KB |
testcase_07 | AC | 133 ms
88,692 KB |
testcase_08 | AC | 160 ms
89,472 KB |
testcase_09 | AC | 139 ms
88,448 KB |
testcase_10 | AC | 135 ms
88,584 KB |
testcase_11 | AC | 139 ms
88,624 KB |
testcase_12 | AC | 135 ms
88,448 KB |
testcase_13 | AC | 147 ms
88,448 KB |
testcase_14 | AC | 164 ms
89,592 KB |
testcase_15 | AC | 142 ms
88,588 KB |
testcase_16 | AC | 143 ms
88,620 KB |
testcase_17 | AC | 155 ms
89,072 KB |
testcase_18 | AC | 140 ms
88,576 KB |
testcase_19 | AC | 142 ms
88,960 KB |
testcase_20 | AC | 139 ms
88,448 KB |
testcase_21 | AC | 137 ms
88,448 KB |
testcase_22 | AC | 142 ms
88,688 KB |
testcase_23 | AC | 151 ms
89,088 KB |
testcase_24 | AC | 158 ms
89,340 KB |
testcase_25 | AC | 969 ms
139,776 KB |
testcase_26 | AC | 187 ms
90,368 KB |
testcase_27 | AC | 310 ms
100,688 KB |
testcase_28 | AC | 582 ms
113,536 KB |
testcase_29 | AC | 331 ms
100,456 KB |
testcase_30 | AC | 1,933 ms
193,340 KB |
testcase_31 | AC | 1,881 ms
193,024 KB |
testcase_32 | AC | 206 ms
91,008 KB |
testcase_33 | AC | 1,884 ms
193,208 KB |
testcase_34 | AC | 1,849 ms
193,408 KB |
testcase_35 | AC | 207 ms
91,464 KB |
testcase_36 | AC | 187 ms
90,496 KB |
testcase_37 | AC | 181 ms
89,796 KB |
testcase_38 | AC | 204 ms
91,136 KB |
testcase_39 | AC | 181 ms
89,856 KB |
testcase_40 | AC | 963 ms
140,092 KB |
testcase_41 | AC | 1,835 ms
193,280 KB |
testcase_42 | AC | 1,850 ms
193,408 KB |
testcase_43 | AC | 319 ms
100,688 KB |
testcase_44 | AC | 1,777 ms
193,488 KB |
testcase_45 | AC | 1,801 ms
193,280 KB |
ソースコード
import sys from sys import stdin from fractions import Fraction import math from math import ceil, floor, sqrt, pi, factorial, gcd from copy import deepcopy from collections import Counter, deque, defaultdict from heapq import heapify, heappop, heappush from itertools import accumulate, product, combinations, combinations_with_replacement, permutations from bisect import bisect, bisect_left, bisect_right from functools import reduce, lru_cache from decimal import Decimal, getcontext, ROUND_HALF_UP def i_input(): return int(stdin.readline()) def i_map(): return map(int, stdin.readline().split()) def i_list(): return list(i_map()) def s_input(): return stdin.readline()[:-1] def s_map(): return s_input().split() def s_list(): return list(s_map()) def lcm(a, b): return a * b // gcd(a, b) def get_distance(x1, y1, x2, y2): d = sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2) return d def rotate(table): n_fild = [] for x in zip(*table[::-1]): n_fild.append(x) return n_fild sys.setrecursionlimit(10 ** 7) INF = float('inf') MOD = 10 ** 9 + 7 MOD2 = 998244353 alpa = 'abcdefghijklmnopqrstuvwxyz' ALPA = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' def main(): N = int(input()) AB = [i_list() for i in range(N)] dp = [[INF] * N for i in range(2**N)] for i in range(N): p = 2 ** i dp[p][i] = 0 for i in range(2**N): for j in range(N): l, r = AB[j] amari = r - l p = 2 ** j if i | p == i: for k in range(N): ll, rr = AB[k] pp = 2 ** k nxt = i | pp if nxt != i: cost = dp[i][j] if cost < amari + ll: cost = amari + ll if dp[nxt][k] > cost: dp[nxt][k] = cost print(min(dp[-1])) if __name__ == '__main__': main()