Submission #960936

# Submission time Handle Problem Language Result Execution time Memory
960936 2024-04-11T09:14:02 Z KasymK Palindromes (APIO14_palindrome) C++17
8 / 100
1000 ms 131072 KB
#include "bits/stdc++.h"
using namespace std;

string s;
int n;

unordered_set<string> st;
vector<string> v;

string del_first(string window){
    const char* ptr = &window[1];
    return ptr;
}

bool pal(string ss){
    int l = 0, r = ss.size() - 1;
    while(l < r){
        if(ss[l] != ss[r])
            return false;
        l++, r--;
    }
    return true;
}

void seta_gos(){
    for(int i = 0; i < n; ++i){
        string sub = "";
        for(int j = i; j < n; ++j){
            sub += s[j];
            st.insert(sub);
        }
    }
}

int occ(string ss){
    int ret = 0;
    int k = (int)ss.size();
    string window = "";
    for(int i = 0; i < k; ++i)
        window += s[i];
    if(window == ss)
        ret++;
    for(int i = k; i < n; ++i){
        window += s[i];
        window = del_first(window);
        if(window == ss)
            ret++;
    }
    return ret;
}

int main(){
    ios::sync_with_stdio(false); cin.tie(nullptr);
    cin >> s;
    n = (int)s.size();
    seta_gos();
    // for(string i : st)
    //     cout << i << "\n";
    for(string i : st)
        if(pal(i))
            v.push_back(i);
    int mx = INT_MIN;
    for(string &i : v){
        int den = i.size() * occ(i);
        mx = max(mx, den);
    }
    cout << mx << "\n";
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
3 Correct 0 ms 344 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 0 ms 344 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 0 ms 348 KB Output is correct
14 Correct 0 ms 348 KB Output is correct
15 Correct 0 ms 348 KB Output is correct
16 Correct 0 ms 348 KB Output is correct
17 Correct 0 ms 348 KB Output is correct
18 Correct 0 ms 344 KB Output is correct
19 Correct 1 ms 452 KB Output is correct
20 Correct 1 ms 348 KB Output is correct
21 Correct 2 ms 712 KB Output is correct
22 Correct 2 ms 860 KB Output is correct
23 Correct 1 ms 348 KB Output is correct
24 Correct 1 ms 604 KB Output is correct
25 Correct 1 ms 348 KB Output is correct
26 Correct 2 ms 860 KB Output is correct
27 Correct 2 ms 860 KB Output is correct
28 Correct 1 ms 860 KB Output is correct
29 Correct 2 ms 860 KB Output is correct
30 Correct 1 ms 860 KB Output is correct
31 Correct 1 ms 860 KB Output is correct
32 Correct 2 ms 856 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 95 ms 2208 KB Output is correct
2 Runtime error 181 ms 131072 KB Execution killed with signal 9
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1055 ms 99920 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 76 ms 131072 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 83 ms 131072 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -