백색광 2 (White Light 2)
시간 제한1초메모리 제한1024 MB
빨강, 초록, 파랑 빛이 한 줄로 N개 놓여 있을 때, 양 끝에서 빛을 끄거나 색을 바꿔 남은 빛의 색이 RGB 반복이 되도록 하는 최소 비용을 구합니다.
문제
조명 N개가 일렬로 놓여 있고, 왼쪽부터 순서대로 1번부터 N번까지 번호가 붙어 있습니다. 각 조명의 색은 빨강, 초록, 파랑 중 하나입니다. 조명의 색은 문자열 S로 주어지며, 조명 i의 색은 S의 i번째 문자가 R이면 빨강, G이면 초록, B이면 파랑입니다. 처음에는 모든 조명이 켜져 있습니다.
켜져 있는 조명이 하나 이상 있는 동안, JOI 군은 다음 3가지 연산을 원하는 순서로 원하는 횟수만큼 할 수 있습니다. 연산을 한 번도 하지 않아도 됩니다.
A: A엔을 내고 켜져 있는 조명 중 가장 왼쪽에 있는 것을 끕니다.B: B엔을 내고 켜져 있는 조명 중 가장 오른쪽에 있는 것을 끕니다.C: C엔을 내고 켜져 있는 조명 하나를 골라 원하는 색으로 다시 켭니다.
멀리서 보았을 때 흰색으로 보이려면, 켜진 조명의 색을 왼쪽부터 읽은 순서가 RGBRGB...RGB처럼 RGB가 반복되어야 합니다. 켜진 조명이 하나도 없는 경우도 RGB가 반복된 것으로 봅니다. GBRGBR이나 RGBRG 같은 순서는 조건을 만족하지 않습니다.
조명과 각 연산의 비용이 주어졌을 때, 켜진 조명의 색 순서를 RGB의 반복으로 만드는 데 드는 비용의 최솟값을 구하세요.
입력
N
S
A B C
출력
켜진 조명의 색 순서를 RGB의 반복으로 만드는 데 드는 비용의 최솟값을 한 줄에 출력하세요. 단위(엔)는 붙이지 않습니다.
제한
S는 길이가N인 문자열이며, 각 문자는R,G,B중 하나입니다.N,A,B,C는 정수입니다.