페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#8189
서브태스크

It's Mooin' Time 3s 1024MB

문제

베시는 길이가 N (1≤N≤3⋅10^5) 인 문자열을 가지고 있고, 문자열은 오직 MO 로만 이루어져 있다. 문자열의 각 위치 i 에 대해 비용 c_i 를 소모해 한 문자를 다른 문자로 바꿀 수 있다. (1≤c_i≤10^8).

베시는 문자열에 길이 L 의 moo를 많이 포함되면 보기 좋을 것이라고 생각한다. (1≤L≤min(N,3)). 길이 L 의 moo 는 하나의 ML−1 개의 O 를 이은 문자열로 정의된다.

1 to ⌊N/L⌋ 까지의 양수 k 에 대해, 문자열이 적어도 k개의 길이 L인 moo를 포함하게 하기 위해 필요한 비용을 계산하자.


입력

첫 번째 줄에 LN이 공백으로 구분되어 주어진다..

두 번째 줄에 길이 N의 문자열이 주어진다. 문자열은 MO로만 이루어져 있다.

세 번째 줄에 N개의 수 c_1…c_N이 공백으로 구분되어 주어진다.


출력

⌊N/L⌋ 개의 줄을 출력한다. k 번째 줄에 문자열이 적어도 k개의 길이 L인 moo를 포함하게 하기 위해 필요한 비용을 출력한다.


부분문제

번호 점수 조건
#110점

L=3, N\le5,000

#220점

L=1

#330점

L=2

#440점

L=3


예제 #1

1 4
MOOO
10 20 30 40
0
20
50
90

예제 #2

3 4
OOOO
50 40 30 20
40

예제 #3

2 20
OOOMOMOOOMOOOMMMOMOO
44743602 39649528 94028117 50811780 97338107 30426846 94909807 22669835 78498782 18004278 16633124 24711234 90542888 88490759 12851185 74589289 54413775 21184626 97688928 10497142
0
0
0
0
0
12851185
35521020
60232254
99881782
952304708

예제 #4

3 20
OOOMOMOOOMOOOMMMOMOO
44743602 39649528 94028117 50811780 97338107 30426846 94909807 22669835 78498782 18004278 16633124 24711234 90542888 88490759 12851185 74589289 54413775 21184626 97688928 10497142
0
0
0
44743602
119332891
207066974

출처

USACO 2024 December Platinum

로그인해야 코드를 작성할 수 있어요.