Submission #512803

#TimeUsernameProblemLanguageResultExecution timeMemory
512803Markomafko972Languages (IOI10_languages)C++14
0 / 100
10065 ms21292 KiB
#include <bits/stdc++.h>
#include <stdlib.h>
#include <stdio.h>
#include "grader.h"
#include "lang.h"
using namespace std;

map<int, long long> m[60];
set<long long> s;
vector<long long> v;

void excerpt(int *E) {
    s.clear();
    v.clear();
    for (int i = 0; i < 100; i++) {
        s.insert(E[i]);
        if (i > 0) s.insert((long long)65535*(long long)E[i-1]+(long long)E[i]);

        if (i > 1) {
            long long u = E[i-2];
            u = u * (long long)65535 + (long long)E[i-1];
            u = u * (long long)65535 + (long long)E[i];
            s.insert(u);
        }
    }
    for (set<long long> :: iterator it = s.begin(); it != s.end(); it++) v.push_back(*it);

    int maxi = -1, koji = 0;
    for (int i = 0; i < 56; i++) {
        int kol = 0;
        for (int j = 0; j < v.size(); j++) {
            if (m[i].find(v[j]) != m[i].end()) {
                kol++;
            }
            //if (j > 1 && m[i][(long long)65535*(long long)65535*(long long)v[j-2]+(long long)65535*(long long)v[j-1]+(long long)v[j]]) kol++;
        }

        if (kol > maxi) {
            maxi = kol;
            koji = i;
        }
    }

    int pravi = language(koji);
    for (int i = 0; i < v.size(); i++) {
        m[pravi][v[i]]++;
        //if (i > 1) m[pravi][(long long)65535*(long long)65535*(long long)v[i-2]+(long long)65535*(long long)v[i-1]+(long long)v[i]]++;
    }
}

Compilation message (stderr)

lang.cpp: In function 'void excerpt(int*)':
lang.cpp:31:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   31 |         for (int j = 0; j < v.size(); j++) {
      |                         ~~^~~~~~~~~~
lang.cpp:45:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   45 |     for (int i = 0; i < v.size(); i++) {
      |                     ~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...