Submission #575363

#TimeUsernameProblemLanguageResultExecution timeMemory
575363drekavaccLanguages (IOI10_languages)C++14
0 / 100
1 ms340 KiB
#include <lang.h> #include <set> #include <map> #include <grader.h> using namespace std; int slo[60][70000]; int counter[60]; int abs(int x){ if(x > 0) return x; return -x; } void excerpt(int *a){ set<int> chars; map<int, int> val; for(int i=0; i<100; i++) chars.insert(a[i]), val[a[i]]++; int best = 0; int mdif = 1000000; for(int l=0; l<56; l++){ int cd = 0; for(int c : chars){ cd += abs(val[c] - slo[l][c]); } if(cd < mdif){ mdif = cd; best = l; } int correct = language(best); counter[correct]++; for(int c : chars){ if(counter[correct] > 1) slo[correct][c] = (slo[correct][c] + val[c]) / 2; else slo[correct][c] = val[c]; } } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...