結果
| 問題 |
No.2994 べき内積
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-12-19 23:06:48 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,254 bytes |
| コンパイル時間 | 209 ms |
| コンパイル使用メモリ | 12,928 KB |
| 実行使用メモリ | 514,140 KB |
| 最終ジャッジ日時 | 2024-12-19 23:08:02 |
| 合計ジャッジ時間 | 74,116 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | WA * 2 OLE * 1 |
| other | TLE * 22 MLE * 1 |
ソースコード
M_N, K, A = [input() for _ in range(3)]
M_N_int = [int(s) for s in M_N.split()]
m = M_N_int.pop(0)
n = M_N_int.pop(0)
k_sp = [int(k) for k in K.split()]
a1_sp = A.split()
a1_int = [int(s) for s in a1_sp]
a = [a1_int]
n_n = [i for i in range(n+1)]
#n_n.reverse()
k_kai = 0
p = 1009
def make_list(s):
global a
for _ in range(s-1):
a.append([0])
def list_00(s, t):
for i in range(1, s):
for _ in range(t-1):
a[i].append(0)
def make_k(k):
global k_kai
for j in range(m+1):
k_kai += k_sp[j]*p**j
return k_kai
def make_a(n, n_n):
global a
for i in range(1, k_kai):
#for p in range(len(a[0])):だとうまくいかない
for p in range(len(a[0])+1):
if n_n is not None and len(n_n)>0:
for j in n_n:
a[i][p] += a[i-1][j]*a[0][n-j]
print(f"a[{i}][{p}] += a[{i-1}][{j}] * a[0][{n-j}] = {a[i-1][j]} * {a[0][n-j]} -> {a[i][p]}")
#n_n.pop(0)
n_n.pop(-1)
n -= 1
if n_n == []:
n_n = [i for i in range(n+1)]
#n_n.reverse()
n = len(a[0])-1
#print(a[i])
a[i].reverse()
#print(a[i])
def make_kai(k_kai, p):
#a[-1].reverse()
for i in range(len(a1_int)):
print(a[k_kai-1][i]%p)
make_k(k_sp)
make_list(k_kai)
list_00(k_kai, len(a1_int))
#print(a[1])
make_a(n, n_n)
print(a)
make_kai(k_kai,p)