답안 #201520

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
201520 2020-02-10T22:15:43 Z luciocf Languages (IOI10_languages) C++14
38 / 100
2605 ms 636 KB
#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];
}
# 결과 실행 시간 메모리 Grader output
1 Correct 2605 ms 636 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 2448 ms 572 KB Output is partially correct - 37.41%