#include <stdlib.h>
#include <stdio.h>
#include <map>
using namespace std;
#include "grader.h"
#include "lang.h"
#define SZ 100
#define LANG 56
int A[LANG][65536];
int appear[LANG];
void excerpt(int *E) {
double langcnt[LANG];
for(int i=0;i<LANG;i++) langcnt[i]=0;
for(int i=0;i<SZ-1;i++){
unsigned int triplet=((E[i]*53)+E[i+1])&65535;
for(int j=0;j<LANG;j++){
int v = A[j][triplet];
langcnt[j] += (double)v/(appear[j]+1);
}
}
double max=0;
int maxi=0;
for(int i=0;i<LANG;i++){
if(max<langcnt[i]){
max=langcnt[i];
maxi=i;
}
}
int res=language(maxi);
appear[res]++;
for(int i=0;i<SZ-1;i++){
unsigned int triplet=((E[i]*53)+E[i+1])&65535;
A[res][triplet]=A[res][triplet]+1;
}
return;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
512 ms |
9316 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Partially correct |
509 ms |
9348 KB |
Output is partially correct - 63.93% |