Submission #632392

# Submission time Handle Problem Language Result Execution time Memory
632392 2022-08-19T22:16:01 Z ggoh Languages (IOI10_languages) C++14
89 / 100
6236 ms 3196 KB
#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<5;k++)
  {
    if(k!=0&&k!=3&&k!=1)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);
    }
  }
  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);
  if(Y[L].size()<1000){
  for(int k=0;k<5;k++)
  {
    if(k!=0&&k!=3&&k!=1)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 time Memory Grader output
1 Correct 6149 ms 3088 KB Output is correct
# Verdict Execution time Memory Grader output
1 Partially correct 6236 ms 3196 KB Output is partially correct - 81.98%