#include <bits/stdc++.h>
#include "grader.h"
#include "lang.h"
#define SZ 100
using namespace std;
int ant[60][110];
int qtd[60];
int lang[10010];
int vez;
void excerpt(int *E)
{
unordered_map<int, bool> aparece;
++vez;
if (vez == 1)
{
lang[vez] = language(1);
for (int i = 1; i <= 100; i++)
ant[lang[1]][i] = E[i-1];
return;
}
for (int i = 1; i <= 100; i++)
aparece[E[i-1]] = 1;
int opt = 1;
int mx_ig = 0;
for (int i = 1; i < 60; i++)
{
if (ant[i][1] == 0) continue;
unordered_set<int> dist;
for (int j = 1; j <= 100; j++)
if (aparece[ant[i][j]])
dist.insert(ant[i][j]);
if ((int)dist.size() > mx_ig)
opt = i, mx_ig = (int)dist.size();
}
lang[vez] = language(opt);
map<int, bool> mark;
int diff = 0;
for (int i = 1; i <= 100; i++)
{
if (!mark[E[i-1]])
{
diff++;
mark[E[i-1]] = 1;
}
}
if (diff > qtd[lang[vez]])
for (int i = 1; i <= 100; i++)
ant[lang[vez]][i] = E[i-1];
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
2605 ms |
636 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Partially correct |
2448 ms |
572 KB |
Output is partially correct - 37.41% |