eolymp
Competitions

Set + Multiset

Рекламный щит

To advertise the new products in China, one company decided to place a billboard on a skyscraper. The shield consists of bulbs organised in the form of a rectangular grid of n rows and m columns. At any time, each of the bulbs can either be turned on or off.

The advertising message consists of k hieroglyphs, which will be displayed one after another. For each character it is known which bulbs should be turned on when displaying this character. The remaining bulbs should be off.

Для управления рекламным щитом разрабатывается специальная система. Система может включать и выключать лампочки целыми группами. Все лампочки разбиваются на несколько групп так, что в каждом иероглифе лампочки из одной группы должны быть либо все включены, либо все выключены.

Для оптимизации работы системы управления необходимо разбить лампочки на минимальное возможное число таких групп. Помогите сотрудникам рекламного отдела компании решить эту задачу.

Input

В первой строке заданы числа k, n и m (1k, n, m100) - количество иероглифов в рекламном сообщении, высота и ширина рекламного щита.

Далее, в k * n строках идет описание иероглифов. Каждый из k иероглифов задается n строками по m символов в каждой. Все эти строки состоят только из символов "*" и ".", "*" соответствует включенной лампочке, "." - выключенной.

Output

Print the minimum number of groups into which bulbs can be divided.

Explanation

В приведенном примере можно разбить лампочки на группы следующим образом: две лампочки из первого столбца образуют одну группу, две лампочки из последнего столбца - вторую, а каждая из двух оставшихся лампочек образует отдельную группу.

Time limit 1 second
Memory limit 122.49 MiB
Input example #1
3 2 3
*..
*..
**.
*..
...
.*.
Output example #1
4
Source 2012 XIII All-Russian Olympiad School Team Programming, November 25, Problem A