제출 #40705

#제출 시각아이디문제언어결과실행 시간메모리
40705HassoonySavez (COCI15_savez)C++14
0 / 120
1 ms516 KiB
#include <stdio.h>
#include <stdlib.h>
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef double D;
const ll inf=(1ll<<61);
const ll mod=1e9+7;
const int MX=2e6+9;
int n,ans;
char oo[MX];
string s[MX];
unordered_map<string,int>tk;
unordered_map<string,int>good1,good2;
int main(){
    scanf("%d",&n);
    for(int i=0;i<n;i++){
        scanf("%s",&oo);
        s[i]=oo;
    }
    for(int i=n-1;i>=0;i--){
     //   cout<<i<<" "<<s[i]<<endl;
        ans=max(ans,tk[s[i]]);
        string tmp="";
        for(auto pp:s[i]){
            tmp+=pp;
            good1[tmp]=1;
        }
        tmp="";
        reverse(s[i].begin(),s[i].end());
        for(auto pp:s[i]){
            tmp+=pp;
            good2[tmp]=1;
        }
        reverse(s[i].begin(),s[i].end());
        for(auto pp:good1){
            if(good2[pp.first]){
                    if(pp.first==s[i]&&s[i].size()!=1)continue;
      //          cout<<pp.first<<" ";
                tk[pp.first]=max(tk[pp.first],tk[s[i]]+1);
            }
        }
        //cout<<endl;
        good1.clear();
        good2.clear();
    }
    cout<<ans+1<<endl;
}

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

savez.cpp: In function 'int main()':
savez.cpp:18:23: warning: format '%s' expects argument of type 'char*', but argument 2 has type 'char (*)[2000009]' [-Wformat=]
         scanf("%s",&oo);
                       ^
savez.cpp:16:19: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d",&n);
                   ^
savez.cpp:18:24: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%s",&oo);
                        ^
#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...
#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...