結果
問題 |
No.2178 Payable Magic Items
|
ユーザー |
![]() |
提出日時 | 2023-10-31 23:56:19 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 749 ms / 4,000 ms |
コード長 | 650 bytes |
コンパイル時間 | 478 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 148,600 KB |
最終ジャッジ日時 | 2024-09-25 17:46:46 |
合計ジャッジ時間 | 11,790 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 23 |
ソースコード
import sys input = sys.stdin.readline def to_num(s): ret = 0 for c in s: x = ord(c) - ord('0') ret *= 5 ret += x return ret n, m = map(int, input().split()) items = [to_num(input()[:-1]) for _ in [0] * n] dp = [0] * (5 ** m) for item in items: dp[item] = 1 visited = set([]) for i in range(m): for j in range(5 ** m): x = j - (5 ** i) * (j // (5 ** i) % 5) if((x, i) in visited): continue visited.add((x, i)) for k in range(3, -1, -1): y = x + (5 ** i) * k dp[y] += dp[y + 5 ** i] ans = sum(dp[item] > 1 for item in items) print(ans)