Submission #1080795

# Submission time Handle Problem Language Result Execution time Memory
1080795 2024-08-29T14:24:36 Z PenguinsAreCute Languages (IOI10_languages) C++17
73 / 100
899 ms 15708 KB
#include "grader.h"
#include <bits/stdc++.h>
using namespace std;
using ld = long double;
#define all(v) begin(v),end(v)
mt19937 rng(1210);
int freq[60][1<<16];
int cnt = 0;
void excerpt(int *E) {
	if(!cnt) {
		cnt = 1;
		for(int i=0;i<60;i++) fill(freq[i]+1,freq[i]+(1<<16),1), freq[i][0]=12000;
	}
	pair<ld,int> bst={-1e9,0};
	for(int i=0;i<56;i++) {
		ld prob = 0;
		for(int j=0;j<100;j++) prob += log(freq[i][E[j]])-log(freq[i][0]);
		bst=max(bst,{prob,i});
	}
	int lang = language(bst.second);
	for(int i=0;i<100;i++) freq[lang][E[i]]++;
	freq[lang][0]+=100;
}
# Verdict Execution time Memory Grader output
1 Correct 899 ms 15708 KB Output is correct
# Verdict Execution time Memory Grader output
1 Partially correct 869 ms 15708 KB Output is partially correct - 67.39%