제출 #149909

#제출 시각아이디문제언어결과실행 시간메모리
149909본인 하지만 안 어림 ㅋㅋ (#200)로카히아 유적 (FXCUP4_lokahia)C++17
100 / 100
7 ms640 KiB
#include "lokahia.h"

int p[202];
int a[202];

int FindBase(int N){
	int i, j, k, t;
	for (i = 0; i < N; i++) {
		p[i] = 1;
		a[i] = i;
	}
	for (i = j = k = 0; i < N; i++) {
		if (k) {
			t = a[j] != a[i] ? CollectRelics(a[j], a[i]) : a[j];
			if (t == -1) k--;
			else {
				p[i] = 0;
				p[j]++;
				a[j] = t;
				k++;
			}
		}
		else {
			j = i;
			k = 1;
		}
	}
	if (!k) return -1;
	for (i = 0; i < j; i++) if (p[i]) {
		t = a[j] != a[i] ? CollectRelics(a[j], a[i]) : a[j];
		if (t != -1) {
			a[j] = t;
			p[j] += p[i];
		}
	}
	if (p[j] * 2 > N) return a[j];
	return -1;
}
#Verdict Execution timeMemoryGrader output
Fetching results...