結果
| 問題 |
No.1299 Random Array Score
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2020-11-08 20:39:22 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 92 ms / 2,000 ms |
| コード長 | 867 bytes |
| コンパイル時間 | 119 ms |
| コンパイル使用メモリ | 12,672 KB |
| 実行使用メモリ | 33,680 KB |
| 最終ジャッジ日時 | 2024-07-22 15:42:58 |
| 合計ジャッジ時間 | 3,857 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 34 |
ソースコード
from itertools import product
from random import randint
MOD = 998244353
def slow_solve(N, K, As):
ret = 0
for choices in product(range(N), repeat=K):
A_copy = As.copy()
for c in choices:
delta = A_copy[c]
for i in range(N):
A_copy[i] += delta
A_copy[i] %= MOD
for A in A_copy:
ret += A
ret %= MOD
ret *= pow(N, MOD - 1 - K, MOD)
ret %= MOD
return ret
def solve(N, K, As):
return pow(2, K, MOD) * sum(As) % MOD
def test():
for _ in range(1000):
N = randint(1, 5)
K = randint(1, 5)
As = [randint(0, 10 ** 9) for _ in range(N)]
assert solve(N, K, As) == slow_solve(N, K, As)
def main():
N, K = map(int, input().split())
As = list(map(int, input().split()))
print(solve(N, K, As))
main()