제출 #131308

#제출 시각아이디문제언어결과실행 시간메모리
131308dragonslayeritLanguages (IOI10_languages)C++14
0 / 100
7184 ms262148 KiB
#include <stdlib.h> #include <stdio.h> #include <set> #include <map> #include <algorithm> #include <stdint.h> #include <unordered_map> #include <vector> #include "grader.h" #include "lang.h" #define SZ 100 std::unordered_map<uint64_t,int> had[56]; int seen[56]; void excerpt(int *E) { std::vector<int> trigrams; for(int i=0;i<100-2;i++){ trigrams.push_back(uint64_t(E[i])<<24|uint64_t(E[i+1])<<16|uint64_t(E[i+2])); } double sim[56]={}; for(int l=0;l<56;l++){ if(!seen[l]) continue; for(uint64_t c:trigrams){ sim[l]+=had[l][c]; } sim[l]/=(seen[l]); } int guess=std::max_element(sim,sim+56)-sim; int ans=language(guess); for(uint64_t c:trigrams){ had[ans][c]++; } seen[ans]++; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...