結果

問題 No.1021 Children in Classrooms
ユーザー takakin
提出日時 2020-05-23 20:34:29
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 561 ms / 2,000 ms
コード長 733 bytes
コンパイル時間 239 ms
コンパイル使用メモリ 12,544 KB
実行使用メモリ 30,548 KB
最終ジャッジ日時 2024-10-09 02:10:58
合計ジャッジ時間 7,257 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 17
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
input=lambda: sys.stdin.readline().rstrip()
n,m=map(int,input().split())
A=[int(i) for i in input().split()]
S=input()
ct1,ct2,ct3=0,0,0
chk=False
for s in S:
  if s=="L":
    if ct1==-(n-1):
      chk=True
      last="l"
      continue
    else:
      ct1-=1
  else:
    if ct1==n-1:
      chk=True
      last="r"
      continue
    else:
      ct1+=1
  if ct1==-(n-1):
    last="l"
  if ct1==n-1:
    last="r"
  ct2=max(ct1,ct2)
  ct3=min(ct1,ct3)
Ans=[0]*n
if chk:
  if last=="l":
    Ans[min(n-1,ct1+n-1)]+=sum(A)
  else:
    Ans[max(0,ct1)]+=sum(A)
else:
  for i in range(n):
    if i<abs(ct3):
      Ans[abs(ct3)+ct1]+=A[i]
    elif i>=n-ct2:
      Ans[n-1-ct2+ct1]+=A[i]
    else:
      Ans[i+ct1]+=A[i]
print(*Ans)
0