Submission #18096

#TimeUsernameProblemLanguageResultExecution timeMemory
18096comet구간 성분 (KOI15_interval)C++14
100 / 100
525 ms1348 KiB
#include <cstdio> #include <algorithm> #include <cstring> #include <vector> #include <set> using namespace std; char t[2][1510]; int main(){ int sz[2]; for(int i=0;i<2;i++){ scanf("%s",t[i]); sz[i]=strlen(t[i]); } int n=min(sz[0],sz[1]); for(int i=n;i>0;i--){ vector<char> s(30); set<vector<char>> S; for(int j=0;j<i;j++){ s[t[0][j]-'a']++; } S.insert(s); for(int j=0;j<sz[0]-i;j++){ s[t[0][j]-'a']--; s[t[0][j+i]-'a']++; S.insert(s); } s=vector<char>(30); for(int j=0;j<i;j++){ s[t[1][j]-'a']++; } if(S.find(s)!=S.end()){ printf("%d\n",i); return 0; } for(int j=0;j<sz[1]-i;j++){ s[t[1][j]-'a']--; s[t[1][j+i]-'a']++; if(S.find(s)!=S.end()){ printf("%d\n",i); return 0; } } } puts("0"); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...