#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")