Submission #357635

# Submission time Handle Problem Language Result Execution time Memory
357635 2021-01-24T09:27:47 Z Mefarnis Languages (IOI10_languages) C++14
95 / 100
9529 ms 19448 KB
#include <bits/stdc++.h>
#include "grader.h"
#define maxl 56
#define maxc 100
#define maxt 65536
#define pb push_back
using namespace std;
typedef pair<int,int> pi;
typedef pair<pi,int> pii;
typedef pair<pii,int> piii;

set<piii> s;

void excerpt(int tokens[maxc]) {
	int score[maxl];
	for( int l = 0 ; l < maxl ; l++ ) {
		score[l] = 0;
		for( int i = 0 ; i <= maxc-4 ; i++ ) {
			pi p1 = pi(tokens[i],tokens[i+1]);
			pii p2 = pii(p1,tokens[i+2]);
			piii p = piii(p2,l);
			score[l] += s.count(p);
		}
	}	
	int bestScore = -1;
	vector<int> candidates;
	for( int l = 0 ; l < maxl ; l++ )
		if(score[l] > bestScore) {
			bestScore = score[l];
			candidates.clear();
			candidates.pb(l);
		}
		else if(score[l] == bestScore)
			candidates.pb(l);
	int sz = candidates.size();
	srand(time(NULL));
	int l = candidates[rand()%sz];
	l = language(l);
	for( int i = 0 ; i <= maxc-4 ; i++ ) {
		pi p1 = pi(tokens[i],tokens[i+1]);
		pii p2 = pii(p1,tokens[i+2]);
		piii p = piii(p2,l);
		s.insert(p);
	}
}
# Verdict Execution time Memory Grader output
1 Correct 9518 ms 19448 KB Output is correct
# Verdict Execution time Memory Grader output
1 Partially correct 9529 ms 19084 KB Output is partially correct - 86.95%