답안 #914671

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
914671 2024-01-22T13:57:22 Z abcvuitunggio Languages (IOI10_languages) C++17
96 / 100
3276 ms 245948 KB
#include <bits/stdc++.h>

#include "grader.h"
#include "lang.h"

#define SZ 100
#define A 65536LL
#define ld long double
#define MOD 458047
using namespace std;
int d[56][MOD][3];
void excerpt(int *E){
    pair <int, int> mx={0,0};
    for (int i=0;i<56;i++){
        int cnt=0;
        for (int j=0;j<SZ-2;j++){
            cnt+=min(d[i][E[j]][0],1);
            cnt+=min(d[i][(E[j]*A+E[j+1])%MOD][1],1)*2;
            cnt+=min(d[i][((E[j]*A+E[j+1])%MOD*A+E[j+2])%MOD][2],1)*3;
        }
        mx=max(mx,{cnt,i});
    }
    int res=language(mx.second);
    for (int i=0;i<SZ;i++){
        d[res][E[i]][0]++;
        d[res][(E[i]*A+E[i+1])%MOD][1]++;
        d[res][((E[i]*A+E[i+1])%MOD*A+E[i+2])%MOD][2]++;
    }
}
# 결과 실행 시간 메모리 Grader output
1 Correct 3276 ms 245920 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 3166 ms 245948 KB Output is partially correct - 87.56%