Submission #525673

# Submission time Handle Problem Language Result Execution time Memory
525673 2022-02-12T13:10:38 Z myvaluska Difference (POI11_roz) C++14
100 / 100
189 ms 3324 KB
// 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
1 Correct 1 ms 308 KB Output is correct
2 Correct 1 ms 300 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 0 ms 308 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 308 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 304 KB Output is correct
2 Correct 1 ms 296 KB Output is correct
3 Correct 1 ms 308 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 304 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3 ms 332 KB Output is correct
2 Correct 0 ms 304 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 19 ms 608 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 4 ms 332 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 189 ms 3300 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 155 ms 2028 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 185 ms 3304 KB Output is correct
2 Correct 153 ms 2000 KB Output is correct
3 Correct 159 ms 2092 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 186 ms 3324 KB Output is correct
2 Correct 189 ms 3248 KB Output is correct
3 Correct 182 ms 3320 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 184 ms 3232 KB Output is correct
2 Correct 186 ms 3252 KB Output is correct
3 Correct 183 ms 3216 KB Output is correct