結果

問題 No.1597 Matrix Sort
ユーザー kamome
提出日時 2021-07-09 22:23:46
言語 PyPy3
(7.3.15)
結果
RE  
実行時間 -
コード長 584 bytes
コンパイル時間 463 ms
コンパイル使用メモリ 82,432 KB
実行使用メモリ 65,152 KB
最終ジャッジ日時 2024-07-01 16:59:51
合計ジャッジ時間 4,061 ms
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample RE * 3
other RE * 27
権限があれば一括ダウンロードができます

ソースコード

diff #

import numpy as np
N, K, P = map(int, input().split())
A = list(map(int, input().split()))
B = list(map(int, input().split()))

s = [0]*(10**7+1)
t = [0]*(10**7+1)

fft_len = 2**24
for a in A:
    s[a] += 1
for b in B:
    t[b] += 1

s = np.array(s, dtype=np.int32)
t = np.array(t, dtype=np.int32)

Fs = np.fft.rfft(s, fft_len)
Ft = np.fft.rfft(t, fft_len)
Fst = Fs*Ft
st = np.fft.irfft(Fst, fft_len)
st = list(np.rint(st))

ans = [0]*P

for i, v in enumerate(st):
    ans[i % P] += v

cnt = 0
for i in range(P):
    cnt += int(ans[i])
    if cnt >= K:
        print(i)
        break
0