Submission #632387

#TimeUsernameProblemLanguageResultExecution timeMemory
632387ggohLanguages (IOI10_languages)C++14
98 / 100
7083 ms34328 KiB
#include<bits/stdc++.h> #include "grader.h" using namespace std; typedef long long lint; typedef unsigned long long ulint; int V[56][65536]; set<lint>Y[56]; void excerpt(int *E) { int l=0,maxi=-1; vector<lint>P; for(int k=0;k<6;k++) { if(k!=0&&k!=5)continue; for(int i=0;i+k<100;i++) { lint h=0; for(int j=0;j<=k;j++) { h=h*65537+E[i+j]; } P.push_back(h); } } sort(P.begin(),P.end()); P.erase(unique(P.begin(),P.end()),P.end()); for(int j=0;j<56;j++) { int kind=0; for(auto &i:P) { if(Y[j].find(i)!=Y[j].end())kind++; } if(kind>maxi) { maxi=kind; l=j; } } int L=language(l); for(int k=0;k<6;k++) { if(k!=0&&k!=5)continue; for(int i=0;i+k<100;i++) { lint h=0; for(int j=0;j<=k;j++) { h=h*65537+E[i+j]; } Y[L].insert(h); } } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...