Submission #359281

# Submission time Handle Problem Language Result Execution time Memory
359281 2021-01-26T15:51:48 Z mohamedsobhi777 Languages (IOI10_languages) C++14
59 / 100
504 ms 8684 KB
#include <bits/stdc++.h>
#include "lang.h"
#include "grader.h"

using namespace std;

const int Lang = 56;

int lang[Lang + 1][66000];
int *glo;
int freq[66000];
set<int> sit[66000];

long long calc(int lan)
{
       for (int i = 0; i < 100; ++i)
              freq[glo[i]] = 0;
       long long ret = 0;
       for (int i = 0; i < 100; ++i)
       {
              if (int(sit[glo[i]].size()) > 10)
                     continue;
              ret += ++freq[glo[i]] * lang[lan][glo[i]];
       }
       return ret;
}

void excerpt(int *ex)
{
       glo = ex;
       long long simi = 0;
       int wnr = 0;
       for (int i = 0; i < Lang; ++i)
       {
              double y = calc(i);
              if (y > simi)
              {
                     simi = y;
                     wnr = i;
              }
       }
       int z = language(wnr);
       for (int i = 0; i < 100; ++i)
       {
              //              lang[z][ex[i]]++;
              lang[z][ex[i]] = min(lang[z][ex[i]] + 1, 15);
              sit[ex[i]].insert(z);
       }
}
# Verdict Execution time Memory Grader output
1 Correct 479 ms 8684 KB Output is correct
# Verdict Execution time Memory Grader output
1 Partially correct 504 ms 8684 KB Output is partially correct - 55.17%