Problem2664--Block Game[USACO-2016-Dec-B]

2664: Block Game[USACO-2016-Dec-B]

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 0  Solved: 0
[Status] [Submit] [Creator:]

Description

Farmer John尝试使用一套学龄前儿童使用的拼写板来教他的奶牛们阅读。一套拼写板一共有N个板(1≤N≤100),每个板都有两面,每一面都有一个单词和一个图像。比如,一块板的一面可能有“cat”这个单词以及一张猫的图像,另一面可能是一个单词“dog”和一张狗的图像。当所有的N个板都平铺在地上的时候,显示的是N个单词,通过翻转一些板,就形成了另一组不同的N个单词。
为了帮助奶牛们拼写,FJ想要另外制作一些木块,每个木块上有印上一个字母。他想要每个字母都足够的多,这样无论拼写板显示的是哪N个单词,都可以用这些印有字母的木块拼写出来。
例如,当N=3时,这三个拼写板朝上的面上的单词分别是“box”、“cat”、“car”,那么此时最少需要的字母木块分别是:一个“b” 一个“o”、一个“x”,两个“c”、两个“a”、一个“t”和一个“r”。
请帮助FJ计算出每个字母他最少需要制作多少个木块,这样无论N个拼写板怎么放置,奶牛们都能拼写出N个可见的单词。

Input

第一行,一个整数,表示拼写板的数量N
接下来N行,每行两个单词,分别表示一个拼写板两面的两个单词。每个单词是最多10个小写字母组成的字符串。

Output

输出26行,每行一个整数。第一行,表示所需要印上字母'a'的木块的数量,第二行表示所需要印上字母'b'的木块的数量,以此类推。

Sample Input Copy

3
fox box
dog cat
car bus

Sample Output 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

HINT

【样例说明】:
样例中N=3,所以3个拼写板一共有2^3=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种情况中的哪一种情况发生,都能拼出来对应的三个单词。

Source/Category

 USACO 2016 level4