#include <iostream>
#include <set>
#include <unordered_map>
#include <vector>
using namespace std;
// struct Word{
// string str;
// int times = 0;
// };
int main() {
int n;
cin >> n;
unordered_map<string, int> s;
int already_remember = 0; // 初始为0,只要某单词的记住次数大于它,就能记住,同时更新它+1
string temp;
set<string> existed_word;// 存储已经记住的字母,避免后续重复计数
// vector<Word> s(n);
for (int i = 0; i < n; i++) {
cin >> temp;
s[temp]++;
if (s[temp] > already_remember && !existed_word.count(temp)) {
already_remember++;
existed_word.insert(temp);
}
}
cout << already_remember;
}
// 64 位输出请用 printf("%lld")
