Logo
(追記) (追記ここまで)

31620번 - 白色光 2 (White Light 2) 서브태스크다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB59373567.308%

문제

N 個のライトが横一列に並んでおり,左から順に 1 から N までの番号が付けられている.それぞれのライトの色は赤,緑,青のいずれかである.ライトの色は文字列 S によって表され,ライト i (1 ≦ i ≦ N) の色は,Si 文字目が R のとき赤,G のとき緑,B のとき青である.最初すべてのライトは点灯している.

JOI 君は点灯しているライトが 1 つ以上ある限り,以下の 3 種類の操作を好きな順番で好きな回数行うことができる.操作を 1 回も行わなくても構わない.

  • A 円を払って点灯しているライトの中で最も左にあるものを消灯する.
  • B 円を払って点灯しているライトの中で最も右にあるものを消灯する.
  • C 円を払って点灯しているライトを 1 つ選び,好きな色へ点灯し直す.

JOI 君は,遠くからこのライトの列を見たときにきれいな白色に見えるようにしたい.そのためには,点灯しているライトを左から見たときの色の並びが RGBRGB...RGB のように RGB(赤緑青)の繰り返しになっている必要がある.ただし,1 つも点灯しているライトが存在しない場合も RGB の繰り返しであるとみなす. GBRGBRRGBRG などの色の並びは条件を満たさないことに注意せよ.

ライトと操作に必要な金額の情報が与えられたとき,点灯しているライトの色の並びを RGB の繰り返しにするために必要な金額の最小値を求めるプログラムを作成せよ.

입력

入力は以下の形式で与えられる.

N
S
A B C

출력

点灯しているライトの色の並びを RGB の繰り返しにするために必要な金額の最小値を,単位 (円) を省いて 1 行で出力せよ.

제한

  • 1 ≦ N ≦ 200 000.
  • S は長さ N の文字列である.
  • S の各文字は R,G,B のいずれかである.
  • 1 ≦ A ≦ 109.
  • 1 ≦ B ≦ 109.
  • 1 ≦ C ≦ 109.
  • N, A, B, C は整数である.

서브태스크

번호배점제한
14

N = 3.

222

N ≦ 300.

319

N ≦ 10 000.

49

N3 の倍数,A = 109,B = 109,C = 1.

510

A = 109,B = 109,C = 1.

636

追加の制約はない.

예제 입력 1

6
GRBBRG
3 4 5

예제 출력 1

16

例えば以下のように 4 回の操作を行ったとき,点灯しているライトの色の並びが RGB の繰り返しになる.消灯しているライトを - で表す.

  1. 3 円を払って点灯しているライトのうち最も左にあるライト 1 を消灯させる.それぞれのライトの状態は文字列 -RBBRG で表される.
  2. 4 円を払って点灯しているライトのうち最も右にあるライト 6 を消灯させる.それぞれのライトの状態は文字列 -RBBR- で表される.
  3. 4 円を払って点灯しているライトのうち最も右にあるライト 5 を消灯させる.それぞれのライトの状態は文字列 -RBB-- で表される.
  4. 5 円を払ってライト 3 を選び,緑色へ点灯し直す.それぞれのライトの状態は文字列 -RGB-- で表される.

16 円未満の金額を払って点灯しているライトの色の並びを RGB の繰り返しにすることはできないため,16 を出力する.

この入力例は小課題 2,3,6 の制約を満たす.

예제 입력 2

3
BRG
1000000000 1000000000 1

예제 출력 2

3

例えば以下のように 3 回の操作を行ったとき,点灯しているライトの色の並びが RGB の繰り返しになる.消灯しているライトを - で表す.

  1. 1 円を払ってライト 2 を選び,緑色へ点灯し直す.それぞれのライトの状態は文字列 BGG で表される.
  2. 1 円を払ってライト 3 を選び,青色へ点灯し直す.それぞれのライトの状態は文字列 BGB で表される.
  3. 1 円を払ってライト 1 を選び,赤色へ点灯し直す.それぞれのライトの状態は文字列 RGB で表される.

3 円未満の金額を払って点灯しているライトの色の並びを RGB の繰り返しにすることはできないため,3 を出力する.

この入力例は小課題 1,2,3,4,5,6 の制約を満たす.

예제 입력 3

3
GRB
9 11 14

예제 출력 3

27

例えば以下のように 3 回の操作を行ったとき,点灯しているライトの色の並びが RGB の繰り返しになる.消灯しているライトを - で表す.

  1. 9 円を払って点灯しているライトのうち最も左にあるライト 1 を消灯させる.それぞれのライトの状態は文字列 -RB で表される.
  2. 9 円を払って点灯しているライトのうち最も左にあるライト 2 を消灯させる.それぞれのライトの状態は文字列 --B で表される.
  3. 9 円を払って点灯しているライトのうち最も左にあるライト 3 を消灯させる.それぞれのライトの状態は文字列 --- で表される.

27 円未満の金額を払って点灯しているライトの色の並びを RGB の繰り返しにすることはできないため,27 を出力する.1 つも点灯しているライトが存在しない場合も条件を満たすものとすることに注意せよ.

この入力例は小課題 1,2,3,6 の制約を満たす.

예제 입력 4

9
RGBRGBRGB
1000000000 1000000000 1

예제 출력 4

0

既にライトの色の並びは RGB の繰り返しになっているため,0 を出力する.

この入力例は小課題 2,3,4,5,6 の制約を満たす.

예제 입력 5

20
BRGBRGBBGBBBGRRBBBRB
1000000000 1000000000 1

예제 출력 5

2000000008

この入力例は小課題 2,3,5,6 の制約を満たす.

예제 입력 6

23
BBGRGBBBBBBGRRGGGGBGGGG
786820955 792349124 710671229

예제 출력 6

10107224827

この入力例は小課題 2,3,6 の制約を満たす.

힌트

출처

Olympiad > Japanese Olympiad in Informatics > Japanese Olympiad in Informatics Qualification Round > JOI 2023/2024 예선 2 3번

채점 및 기타 정보

  • 예제는 채점하지 않는다.
(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /