문제1647--Block Game

1647: Block Game

[만든사람 : ]
시간제한 : 2.000 sec  메모리제한 : 512 MB  제출 : 6  맞은 사람 : 3

제출  

문제 설명

농부 존은 소들에게 읽기를 가르치려고, 일반적으로 미취학 아동이 사용하는 N개짜리 영어철자 보드 세트를 줬습니다. (1 ≤ N≤ 100). 양면으로 되어있는 보드의 각 면에는 단어와 이미지가 있습니다.

예를 들어 한 면에는 고양이 사진과 함께 'cat'이라는 단어가 있고, 다른 면에는 강아지 사진과 함께 'dog'라는 단어가 있을 수 있습니다. 따라서 보드가 바닥에 놓였을 때, N개의 단어가 보여집니다. 일부 보드를 뒤집으면 다른 N 개의 단어가 보여질 수 있습니다.

소의 영어철자 공부를 돕기 위해 농부 John은 각각 한 글자의 알파벳으로 양각된 여러 개의 나무 블록을 만들고 싶어합니다.

그는 각 문자의 블록을 충분히 많이 만들고 싶어하므로 N개의 단어가 보드에 보여지면, 소는 블록을 사용하여 이 단어의 철자를 모두 쓸 수 있습니다.

예를 들어 N= 3 그리고 'box', 'cat', 'car'라는 단어가 보드에 보여졌다면, 젖소는 적어도 하나의 'b' 블록, 하나의 'o' 블록, 하나의 'x' 블록, 두 개의 'c' 블록, 두 개의 'a' 블록, ' 하나의 't' 블록, 하나의 'r' 블록이 필요합니다.

 

농부 존이 만들어야 하는 알파벳의 각 글자에 대한 최소 블록 수를 구할 수 있게 도와주자. 각 보드의 어떤 면이 보여지든 상관없이 소가 모든 N개 단어의 영어철자를 쓸 수 있어야 한다.

입력 설명

입력의 첫 번째 줄에 보드의 개수 N이 주어진다.

다음 N개의 줄은 각각 공백으로 구분된 두 개의 단어가 주어지는데, 이 두 개의 단어는 한 개의 보드 양면에 표시된 두 개의 단어를 나타낸다.

각 단어는 최대 10개의 소문자로 구성된 문자열이다.

출력 설명

첫 번째 줄 a부터 마지막 26 번째 줄 z까지 필요한 영어철자 블록의 수를 각 줄에 출력한다.

입력 예시1 Copy

3
fox box
dog cat
car bus

출력 예시1 Copy

2
2
2
1
0
1
1
0
0
0
0
0
0
0
2
0
0
1
1
1
1
0
0
1
0
0

도움

주어진 예제에서 N = 3개의 보드로 보여질 수 있는 단어는 23 = 8 가지로 나타낸다.

fox dog car

fox dog bus

fox cat car

fox cat bus

box dog car

box dog bus

box cat car

box cat bus

이 8가지 중에서 어떤 경우가 주어지더라도 세 단어를 모두 영어블록으로 만들 수 있도록 충분한 영어철자 블록이 필요하다.

출처/분류