結果
問題 | No.2566 美しい整数列 |
ユーザー | Kemty |
提出日時 | 2023-12-02 16:00:29 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 307 ms / 2,000 ms |
コード長 | 861 bytes |
コンパイル時間 | 177 ms |
コンパイル使用メモリ | 81,700 KB |
実行使用メモリ | 160,492 KB |
最終ジャッジ日時 | 2023-12-02 16:00:43 |
合計ジャッジ時間 | 7,645 ms |
ジャッジサーバーID (参考情報) |
judge12 / judge10 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 94 ms
80,084 KB |
testcase_01 | AC | 92 ms
80,084 KB |
testcase_02 | AC | 93 ms
80,084 KB |
testcase_03 | AC | 91 ms
80,084 KB |
testcase_04 | AC | 302 ms
160,492 KB |
testcase_05 | AC | 307 ms
159,968 KB |
testcase_06 | AC | 243 ms
144,060 KB |
testcase_07 | AC | 225 ms
147,672 KB |
testcase_08 | AC | 225 ms
146,452 KB |
testcase_09 | AC | 224 ms
147,352 KB |
testcase_10 | AC | 222 ms
147,340 KB |
testcase_11 | AC | 259 ms
147,356 KB |
testcase_12 | AC | 252 ms
148,812 KB |
testcase_13 | AC | 252 ms
147,580 KB |
testcase_14 | AC | 251 ms
147,792 KB |
testcase_15 | AC | 250 ms
147,784 KB |
testcase_16 | AC | 291 ms
141,636 KB |
testcase_17 | AC | 282 ms
144,620 KB |
testcase_18 | AC | 280 ms
145,720 KB |
testcase_19 | AC | 229 ms
132,596 KB |
testcase_20 | AC | 293 ms
141,348 KB |
testcase_21 | AC | 273 ms
143,964 KB |
testcase_22 | AC | 216 ms
132,772 KB |
testcase_23 | AC | 251 ms
137,164 KB |
ソースコード
from collections import defaultdict, deque, Counter import copy from itertools import combinations, permutations, product, accumulate, groupby, chain from heapq import heapify, heappop, heappush import math import bisect from pprint import pprint from random import randint import sys # sys.setrecursionlimit(700000) input = lambda: sys.stdin.readline().rstrip('\n') inf = float('inf') mod1 = 10**9+7 mod2 = 998244353 def ceil_div(x, y): return -(-x//y) ################################################ N, M = map(int, input().split()) A = list(map(int, input().split())) B = list(map(int, input().split())) C = list(map(int, input().split())) s = A[0] d = defaultdict(list) d[0].append(C[0]) j = 0 for i in range(1, N): s += B[j] j = (j+1)%M d[A[i]-s].append(C[i]) S = sum(C) ans = inf for v in d.values(): ans = min(ans, S-sum(v)) print(ans)