Submission #358535

# Submission time Handle Problem Language Result Execution time Memory
358535 2021-01-25T17:11:07 Z idk321 Languages (IOI10_languages) C++11
44 / 100
6274 ms 5324 KB
#include <stdlib.h>
#include <stdio.h>

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

#define SZ 100

#include <bits/stdc++.h>

using namespace std;
typedef long long ll;

unordered_map<int, ll> freq [56];
bool vis[56];

void excerpt(int *E) {
    unordered_map<int, ll> cfreq;
   for (int i = 0; i < 100; i++)
   {
        cfreq[E[i]]++;
   }

   ll best = -1;
   ll bscore = -1;
   ll factor = 1000000000;
   for (int i = 0; i < 56; i++)
   {
        ll score = 0;
        for (auto it = freq[i].begin(); it != freq[i].end(); it++)
        {
            if (it->second != 0 && cfreq[it->first] != 0)
            {
                 score += factor;
                 score -= abs(it->second - cfreq[it->first]) * (factor) / 10;
            }
        }
        if (score >  bscore)
        {
            best = i;
            bscore = score;
        }
   }

   int actual = language(best);

   if (!vis[actual])
   {
        vis[actual] = true;
        freq[actual] = cfreq;
   } else
   {
        for (auto it = cfreq.begin(); it != cfreq.end(); it++)
        {
            freq[actual][it->first] += it->second;
            freq[actual][it->first] /= 2;
        }
   }
}
# Verdict Execution time Memory Grader output
1 Correct 6274 ms 5312 KB Output is correct
# Verdict Execution time Memory Grader output
1 Partially correct 6173 ms 5324 KB Output is partially correct - 42.03%