This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
// atcoderdpcontest.cpp : This file contains the 'main' function. Program execution begins and ends there.
//
#include <iostream>
#include <vector>
using namespace std;
int main()
{
    vector<vector<int>>prefix(26, vector<int>(26, 0));
    vector<vector<int>>prefixmin(26, vector<int>(26, 1e9+3));
    vector<vector<int>>posledny(26, vector<int>(26));
    int n;
    cin >> n;
    string s;
    cin >> s;
    int vys = 0;
    for (int i = 0; i < n; i++)
    {
        int znak = s[i] - 'a';
        for (int znak2 = 0; znak2 < 26; znak2++)
        {
            if (znak != znak2)
            {
                prefix[znak][znak2] += 1;
                vys = max(vys, prefix[znak][znak2] - prefixmin[znak][znak2]);
                prefixmin[znak2][znak] = min(prefixmin[znak2][znak], posledny[znak2][znak]);
                posledny[znak2][znak] = prefix[znak2][znak] - 1;
                prefix[znak2][znak] -= 1;
                vys = max(vys, prefix[znak2][znak] - prefixmin[znak2][znak]);
            }
        }
    }
    cout << vys << endl;
    return 0;
    ///std::cout << "Hello World!\n";
}
// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
// Debug program: F5 or Debug > Start Debugging menu
// Tips for Getting Started: 
//   1. Use the Solution Explorer window to add/manage files
//   2. Use the Team Explorer window to connect to source control
//   3. Use the Output window to see build output and other messages
//   4. Use the Error List window to view errors
//   5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
//   6. In the future, to open this project again, go to File > Open > Project and select the .sln file
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |