func main() var ss: [][]char :: cui@input().split(" ") var mg: int :: ss[0].toInt(&) var mc: int :: ss[1].toInt(&) var mp: int :: ss[2].toInt(&) var s: []char :: cui@input() var og: int :: 0 var oc: int :: 0 var op: int :: 0 for i(0, ^s - 1) switch(s[i]) case 'G' do og :+ 1 case 'C' do oc :+ 1 case 'P' do op :+ 1 end switch end for var ans: int :: 0 do ans :+ 3 * [og, mp].min() do ans :+ 3 * [oc, mg].min() do ans :+ 3 * [op, mc].min() var tmp: int do tmp :: [og, mp].min() do og :- tmp do mp :- tmp do tmp :: [oc, mg].min() do oc :- tmp do mg :- tmp do tmp :: [op, mc].min() do op :- tmp do mc :- tmp do ans :+ [og, mg].min() do ans :+ [oc, mc].min() do ans :+ [op, mp].min() do cui@print("\{ans}\n") end func