제출 #867625

#제출 시각아이디문제언어결과실행 시간메모리
867625MatjazLanguages (IOI10_languages)C++14
81 / 100
9303 ms8340 KiB
#include <stdlib.h> #include <stdio.h> #include <set> #include <vector> #include <algorithm> using namespace std; #include "grader.h" #include "lang.h" #define SZ 100 set<int> S[56]; int L = 56; void excerpt(int *E) { set<int> sample; long long a = 719; long long b = 479001599; int l = 2; for (int i=0;i<100 - l + 1;i++){ int hash = 0; for (int j=0;j<l;j++){ hash = (hash * a + E[i + j]) % b; } sample.insert(hash); } int best_score = 0; int best_guess = 0; for (int i=0;i<L;i++){ set<int> intersect; set_intersection(sample.begin(), sample.end(), S[i].begin(), S[i].end(), std::inserter(intersect, intersect.begin())); int score = intersect.size(); if (best_score < score){ best_score = score; best_guess = i; } } int target = language(best_guess); S[target].insert(sample.begin(), sample.end()); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...