답안 #522210

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
522210 2022-02-04T06:52:12 Z sean617 Languages (IOI10_languages) C++
100 / 100
6240 ms 25664 KB
#include "grader.h"
#include "lang.h"
#include <algorithm>
#include <set>
using namespace std;

typedef unsigned long long ll;
ll l, M = (1LL << 16), M2 = (1LL << 32), e[10005];
bool v[58][100000];
set<ll> v2[58];

ll fnum(ll p) {
	ll t1, t2, t;
	t1 = e[p - 3] * M + e[p - 2];
	t2 = e[p - 1] * M + e[p];
	t = t1 * M2 + t2;
	return t;
}

void excerpt(int *E) {
	ll i, j, t, num, ans = 0, x, mx = 0, mx2 = 0, cnt, cnt2;

	l = 100;
	for (i = 0; i < l; i++) e[i] = E[i];
	for (x =0; x < 56; x++) {
		cnt = 0;
		cnt2 = 0;
		for (i = 0; i < l; i++) {
			if (i >= 3 && v2[x].count(fnum(i)) == 1) cnt++;
			cnt2 += v[x][e[i]];
		}
		cnt += cnt2;
		if (cnt > mx) {
			mx = cnt;
			ans = x;
		}
	}
	ans = language(ans);
	for (i = 0; i < l; i++) {
		if (i >= 3) v2[ans].insert(fnum(i));
		v[ans][e[i]] = 1;
	}
}

Compilation message

lang.cpp: In function 'void excerpt(int*)':
lang.cpp:21:8: warning: unused variable 'j' [-Wunused-variable]
   21 |  ll i, j, t, num, ans = 0, x, mx = 0, mx2 = 0, cnt, cnt2;
      |        ^
lang.cpp:21:11: warning: unused variable 't' [-Wunused-variable]
   21 |  ll i, j, t, num, ans = 0, x, mx = 0, mx2 = 0, cnt, cnt2;
      |           ^
lang.cpp:21:14: warning: unused variable 'num' [-Wunused-variable]
   21 |  ll i, j, t, num, ans = 0, x, mx = 0, mx2 = 0, cnt, cnt2;
      |              ^~~
lang.cpp:21:39: warning: unused variable 'mx2' [-Wunused-variable]
   21 |  ll i, j, t, num, ans = 0, x, mx = 0, mx2 = 0, cnt, cnt2;
      |                                       ^~~
# 결과 실행 시간 메모리 Grader output
1 Correct 6199 ms 25664 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 6240 ms 25572 KB Output is correct - 91.09%