# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
44975 | junodeveloper | Languages (IOI10_languages) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "lang.h"
#include "grader.h"
#include <map>
#include <algorithm>
using namespace std;
typedef unsigned long long ll;
map<ll, int> mp[56];
ll cnt[56] = {0};
void excerpt(int* a) {
memset(cnt, 0, sizeof(cnt));
for(int i=0; i<97; i++) {
ll val = 0;
for(int j=0; j<4; j++)
val = val * 65535 + a[i] - 1;
int mx = 0, idx = 0;
for(int j=0; j<56; j++)
if(mx < mp[j][val])
mx = mp[j][val], idx = j;
cnt[idx] += mx;
}
int ret = max_element(cnt, cnt+56) - cnt;
int ans = language(ret);
for(int i=0; i<97; i++) {
ll val = 0;
for(int j=0; j<4; j++)
val = val * 65535 + a[i] - 1;
mp[ans][val]++;
}
}