結果

問題 No.2482 Sandglasses
ユーザー 👑 rin204
提出日時 2023-09-23 01:54:57
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 475 ms / 2,000 ms
コード長 449 bytes
コンパイル時間 320 ms
コンパイル使用メモリ 82,176 KB
実行使用メモリ 148,464 KB
最終ジャッジ日時 2024-11-16 22:54:52
合計ジャッジ時間 14,411 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 25
権限があれば一括ダウンロードができます

ソースコード

diff #

n, k, t = map(int, input().split())
S = input().split()
B = list(map(int, input().split()))
C = [0] * n
for i, s in enumerate(S):
    if s == "A":
        C[i] = B[i] - t
    else:
        C[i] = B[i] + t

for i, c in enumerate(C):
    c %= 2 * k
    if c > k:
        c = 2 * k - c
    C[i] = c
C.sort()
B = [(b, i) for i, b in enumerate(B)]
B.sort(key=lambda x: x[0])
ans = [0] * n
for i in range(n):
    j = B[i][1]
    ans[j] = C[i]
print(*ans)
0