print1612. Runeology

printRuneology

Ограничения: время – 1s/2s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

In this economy, we all know how hard it is to get a job. Mirko, a recent college graduate, however, got lucky – he is now employed as a runeologist by the Language Institute of Croatia. His friend Slavko believes runeology isn’t a science and is hence angry at Mirko for believing the opposite. One foggy Christmas day, Mirko’s laptop broke. Since he isn’t great with computers, he gave it to Slavko to repair it. Slavko, felling a little naughty, decided to mess up a particular file Mirko was working on.
This file contains a matrix of `R` rows and `C` columns. Each element of the matrix is a single letter. No two columns of the matrix are equal. To have some fun with pseudo-scientist Mirko, Slavko decided he will delete as much rows as possible from the top of the table, without breaking the no-equal-column rule.
Input
The first line of input contains two integers `R` and `C` (`2\ ≤\ R,\ C\ ≤\ 1000`), the number of rows and the number of columns, respectively. In each of the next `R` lines there are `C` small letters of the English alphabet. These `R`x`C` letters represent Mirko’s table (which does not have two same columns).
Output
Output a single integer, the maximum number of rows which can be deleted from the top of the table so that no two columns are equal.

Sample Input 1

2 6
dobarz
adatak

Sample Output 1

0

Sample Input 2

3 4
alfa
beta
zeta

Sample Output 2

2
Source: COCI 2010/2011, contest #3
loading