結果
問題 | No.33 アメーバがたくさん |
ユーザー | dango |
提出日時 | 2023-07-09 15:53:44 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 531 bytes |
コンパイル時間 | 539 ms |
コンパイル使用メモリ | 87,044 KB |
実行使用メモリ | 80,304 KB |
最終ジャッジ日時 | 2023-09-30 19:14:17 |
合計ジャッジ時間 | 3,810 ms |
ジャッジサーバーID (参考情報) |
judge14 / judge11 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 172 ms
80,124 KB |
testcase_01 | AC | 171 ms
80,152 KB |
testcase_02 | AC | 174 ms
80,172 KB |
testcase_03 | AC | 171 ms
80,200 KB |
testcase_04 | WA | - |
testcase_05 | AC | 173 ms
80,224 KB |
testcase_06 | AC | 165 ms
80,048 KB |
testcase_07 | AC | 167 ms
80,212 KB |
testcase_08 | WA | - |
testcase_09 | AC | 166 ms
80,132 KB |
testcase_10 | AC | 165 ms
80,172 KB |
ソースコード
from typing import List, Tuple N, D, T = map(int, input().split()) X = list(map(int, input().split())) amoeba: List[Tuple[int, int]] = [] for x in X: d = x % D if x < 0: d += D amoeba.append((x, d)) amoeba.sort(key=lambda it: (it[1], it[0])) ans = 0 for i, a in enumerate(amoeba): if i == 0 or amoeba[i - 1][1] != a[1]: ans += T else: ans += min((a[0] - amoeba[i - 1][0]) // D - 1, T * 2) if i == len(amoeba) - 1 or amoeba[i + 1][1] != a[1]: ans += T ans += 1 print(ans)