結果
問題 | No.935 う し た ぷ に き あ く ん 笑 ビ - ム |
ユーザー |
|
提出日時 | 2022-03-13 22:45:49 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 156 ms / 2,000 ms |
コード長 | 626 bytes |
コンパイル時間 | 255 ms |
コンパイル使用メモリ | 82,080 KB |
実行使用メモリ | 76,984 KB |
最終ジャッジ日時 | 2024-09-19 06:23:52 |
合計ジャッジ時間 | 6,728 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 58 |
ソースコード
N = int(input()) S = input() A = list(map(int,input().split())) teki = [0] * (N + 1) for i in range(N): teki[i+1] = teki[i] if S[i] == "E": teki[i+1] += 1 def calc(k): right = 0 now = 0 ans = 0 for left in range(N): while right < N and now + A[right] <= k: now += A[right] right += 1 count = teki[right] - teki[left] if count > ans: ans = count if left == right: right += 1 else: now -= A[left] return ans Q = int(input()) K = list(map(int,input().split())) for k in K: print(calc(k))