제출 #134940

#제출 시각아이디문제언어결과실행 시간메모리
134940degelo회문 (APIO14_palindrome)C++17
23 / 100
189 ms5900 KiB
#include<bits/stdc++.h>
#define maxn 1003
bool marc[maxn][maxn];
using namespace std;
map< string ,int > qtd;
map< string,int >::iterator mit;
int main(){
    string s;
    cin>>s;
    int n=s.size();
    vector<string> subst;
    for(int i=0;i<n;i++){
        string last="";
        last+=s[i];
        for(int i=0;i<subst.size();i++) subst[i]+=last;
        subst.push_back(last);
        for(int j=0;j<=i;j++){
            if(s[j]==s[i]){
                if(i==j||i==j+1){
                    qtd[subst[j]]++;
                    marc[i][j]=true;
                }
                else if(marc[i-1][j+1]){
                    qtd[subst[j]]++;
                    marc[i][j]=true;
                }
            }
        }
    }
    int resp=0;
    for(mit=qtd.begin();mit!=qtd.end();mit++){
        string st=(*mit).first;
        int q=qtd[st];
        int nt=st.size();
        resp=max(resp,q*nt);
    }
    cout<<resp;
}

컴파일 시 표준 에러 (stderr) 메시지

palindrome.cpp: In function 'int main()':
palindrome.cpp:15:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for(int i=0;i<subst.size();i++) subst[i]+=last;
                     ~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...