頁面無法載入?點擊這裡可能會修復。
Placeholder

#1595

콘서트 1s 32MB

問題

농부 창호의 부업 중 하나로는 기타연주가 있는데, 최근 의뢰 받은 세진이가 기획한 콘서트에서 연주를 하고자 한다. 

허나 불행하게도 창호가 가지고 있는 기타 중에 좋은 기타가 없기 때문에 새로운 기타를 사야만 했다.

창호는 기타 판매점에게 전화를 걸었고 그들은 자신들이 팔고 있는 기타의 목록이 주어진 카테고리를 창호에게 보내주었다.

창호는 콘서트에서 연주할 곡들의 목록을 가지고 있다. 

특정 기타의 경우 어떤 곡을 연주할 경우 소리가 이상해지기 때문에 기타를 쓸 수 없기에 오직 하나의 기타로만 연주를 할 수 없다. 

기획자 세진이는 인색한 사람이기에 기타를 사는 비용을 따로 마련해 주지 않는다. 

하지만 농사를 통해서 많은 돈을 벌었던 창호이기에 기타를 사는 데 비용의 문제는 걱정 하지 않아도 되지만 

되도록 적은 기타를 사는 것이 의뢰 받은 일을 최대한 손해 보지 않도록 할 수 있을 것이다.

 

어쨌든 창호는 최대한 많은 곡을 연주 하고자 하며, 

가급적이면 적은 수의 기타를 사서 연주를 하고자 한다. 창호가 원하는데로 기타를 살 수 있게 도와줄 수 있게 프로그램을 작성해보자.


輸入

첫 번째 줄에는 주문 가능한 기타의 개수와 N(N≤10)과 창호가 연주해야 하는 곡의 개수 M(M≤50)이 주어진다. 그 다음 줄부터 N개 줄에는 창호가 살 수 있는 기타의 이름과(50자 이하) 그 기타가 연주할 수 있는 노래들이 어떤 것인지(M글자) 공백을 사이에 두고 주어진다. 여기서 연주할 수 있는 노래들에 대한 문자열의 경우 알파벳 대문자 Y와 대문자 N으로 구성 되는데, 이 경우 Y의 경우 해당 순서의 노래를 연주가 가능하다는 것이고, N의 경우 해당 순서의 노래는 연주 할 수 없는 기타라는 것이다. 가령 NYNYY라고 할 경우 1, 3번째 곡는 연주할 수 없으며, 나머지 곡은 연주가 가능하다는 것이다.


輸出

입력된 기타 정보에 대해서 연주 할 수 있는 곡의 개수가 가장 많을 경우, 사게 되는 기타가 최소가 되었을 경우의 사야하는 기타를 공백을 사이에 두고 출력한다. 만약 최소가 되는 경우가 여러 가지 있을 경우 사전 순으로 가장 빠른 경우를 출력한다. 모든 노래를 연주 할 수 없는 경우가 입력 되는 것은 없다고 가정한다.


範例

3 5 

GIBSON YNYYN
FENDER NNNYY
TAYLOR YYYYY
TAYLOR

來源

Online contest
需要登入才能撰寫程式碼。