Submission #67569

#TimeUsernameProblemLanguageResultExecution timeMemory
67569usefulhyunLanguages (IOI10_languages)C++17
59 / 100
295 ms2552 KiB
#include <stdlib.h>
#include <stdio.h>
#include <unordered_map>
using namespace std;

#include "grader.h"
#include "lang.h"

#define SZ 100

unordered_map<int, int> lang(100000);
int cnt = 0;

void excerpt(int *E) {
	
	int guess = rand()%56;
	for (int i = 0; i < 100; i++) {
		int key = E[i];
		if (lang.find(key) != lang.end() && lang[key] != 56)
			guess = lang[key];
	}

	for (int i = 0; i < 99; i++) {
		int key	= E[i]*65536 + E[i + 1];
		if (lang.find(key) != lang.end() && lang[key] != 56)
			guess = lang[key];
	}
	int answer = language(guess);

	for (int i = 0; i < 100; i++) {
		int key = E[i];
		if (lang.find(key) == lang.end())
			lang[key] = answer;
		else if (lang[key] != answer)
			lang[key] = 56;

	}

	for (int i = 0; i < 99; i++) {
		int key = E[i] * 65536 + E[i + 1];
		if (lang.find(key) == lang.end())
			lang[key] = answer;
		else if (lang[key] != answer)
			lang[key] = 56;
	}

}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...