結果
問題 |
No.3070 Collecting Coins Speedrun 2
|
ユーザー |
|
提出日時 | 2025-03-25 16:27:56 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 67 ms / 2,000 ms |
コード長 | 423 bytes |
コンパイル時間 | 284 ms |
コンパイル使用メモリ | 82,728 KB |
実行使用メモリ | 84,252 KB |
最終ジャッジ日時 | 2025-03-25 16:28:00 |
合計ジャッジ時間 | 3,512 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 32 |
ソースコード
N = int(input()) A = list(map(int, input().split())) m = z = p = 0 for a in A: if a < 0: m += 1 if a == 0: z += 1 if a > 0: p += 1 mod = 998244353 if m > 0 and p > 0: ans = 2 * pow(2, m - 1, mod) * pow(3, z, mod) * pow(2, p - 1, mod) % mod elif m == 0 and p == 0: ans = 1 else: ans = pow(2, max(0, m - 1), mod) * pow(2, z, mod) * pow(2, max(0, p - 1), mod) % mod print(ans)