Submission #512695

#TimeUsernameProblemLanguageResultExecution timeMemory
512695lovro_nidogon1Languages (IOI10_languages)C++14
0 / 100
346 ms4348 KiB
#include<bits/stdc++.h>
#define ll long long
#include "lang.h"
#include "grader.h"
using namespace std;
ll freq[56][70001], nocur[56], spac, cfreq[70001];
ll sq(ll x, ll y) {return (x + y) * (x + y);}
void excerpt(int *e) {
	memset(cfreq, 0, sizeof(cfreq));
	 for(ll i = 0; i < 100; i++) cfreq[e[i]]++;
	 ll exp = 0;
	 ll sd = 1e9;
	 for(ll i = 0; i < 56; i++) {
	 	 ll csd = 0;	 	
		 for(ll j = 0; j < 100; j++) {
	 		csd += sq(cfreq[e[j]] * nocur[i], -freq[i][e[j]]); 		
		 }		  	
		 if(csd < sd) sd = csd, exp = i;
	 }
	 ll ca = language(exp);
	 for(ll i = 0; i < 100; i++) freq[ca][e[i]] += cfreq[e[i]];
	 nocur[ca]++;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...