|
세나 |
안녕하세요, 선생님. 우리 응급의학부는 시체…… 실례. 환자들을 수송합니다. |
|
세나 |
어제 사소한 사고가 발생하여 응급의학부 부실로 실어 나를 시ㅊ……. |
|
세나 |
……부상자가 발생했습니다. 다행히 큰일은 아니고, 다들 맛없는 소스를 먹고 너무 맛없어서 정신을 잃었습니다. |
|
세나 |
환자들을 돌보는 데 있어 약품은 항상 정비되어 있어야 합니다. 다만… 오늘 환자가 많아서 미처 정비를 하지 못했습니다. |
|
세나 |
그래서 선생님, 약품 정비를 도와주실 수 있겠습니까? |
첫 번째 줄에 양의 정수 이 주어진다.
두 번째 줄에 , , , 이 공백 없이 주어진다. 문자들은 알파벳 대문자로만 이루어져 있다.
첫 번째 줄에 약품의 최소 종류 수를 출력한다.
두 번째 줄에 정비를 마친 후의 약품 상태를 나타내는 , , , 을 공백 없이 출력한다. 약품의 종류 표기는 알파벳 대문자만 가능하다.
세나의 요청으로 선반에 일렬로 나열된 개의 약품을 정비해야 한다. 같은 선반에는 약품이 가능한 한 같은 종류로 구비될 수 있도록 정리하고자 한다. 현재 선반에서 번째 약품의 라벨에는 대문자 알파벳 가 적혀 있으며, 는 약품의 종류를 나타낸다.
약품 정비를 위해 다음 세 행동을 각각 원하는 만큼 수행할 수 있다.
만약 현재 행동에서 임의의 를 교체했다면 다음 행동에서 는 갱신된 를 기준으로 한다.
정비를 마친 후, 약품의 종류 수가 최소가 되도록 하려고 한다. 그때의 최소 종류 수와 최종 약품 상태를 구해보자.
가능한 약품 상태가 여러 개라면 그중 아무것이나 출력한다.