結果
| 問題 | No.2537 多重含意 |
| コンテスト | |
| ユーザー |
Kude
|
| 提出日時 | 2023-11-10 21:59:10 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 169 ms / 2,000 ms |
| コード長 | 551 bytes |
| 記録 | |
| コンパイル時間 | 208 ms |
| コンパイル使用メモリ | 82,048 KB |
| 実行使用メモリ | 87,808 KB |
| 最終ジャッジ日時 | 2024-09-26 01:30:15 |
| 合計ジャッジ時間 | 3,091 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 24 |
ソースコード
n, b = map(int, input().split())
a = [-1] * n
rest = n
ans = 0
done = False
for x in map(int, input().split()):
x -= 1
res = ans
if not done:
if a[x] == 1:
res = (res + pow(2, rest, b)) % b
elif a[x] == -1:
res = (res + pow(2, rest - 1, b)) % b
print(res)
if not done:
if a[x] == -1:
ans = (ans + pow(2, rest - 1, b)) % b
a[x] = 1
rest -= 1
else:
if a[x] == 0:
ans += pow(2, rest, b)
done = True
Kude