제출 #297971

#제출 시각아이디문제언어결과실행 시간메모리
297971PlurmGondola (IOI14_gondola)C++11
컴파일 에러
0 ms0 KiB
#include "gondola.h"

int valid(int n, int inputSeq[])
{
	int offs = -1;
	for(int i = 0; i < n; i++){
		if(inputSeq[i] == 1) offs = i;
	}
	for(int i = 0; i < n; i++){
		if(inputSeq[(i+offs) % n] <= n && inputSeq[(i+offs) % n] != i+1) return 0;
	}
	return 1;
}

//----------------------

int replacement(int n, int gondolaSeq[], int replacementSeq[])
{
	int offs = 0;
	int dummy = 0;
	int mx = -1;
	int* expect = new int[250005];
	fill(expect, expect+250005, -1);
	for(int i = 0; i < n; i++){
		if(gondolaSeq[i] <= n) offs = i-gondolaSeq[i]+1;
		else expect[gondolaSeq[i]] = i;
		if(gondolaSeq[i] > mx){
			mx = gondolaSeq[i];
			dummy = i;
		}
	}
	int rpidx = 0;
	for(int i = n+1; i <= mx; i++){
		if(expect[i] == -1){
			replacementSeq[rpidx++] = gondolaSeq[dummy];
			gondolaSeq[dummy] = i;
		}else{
			replacementSeq[rpidx++] = gondolaSeq[expect[i]];
			gondolaSeq[expect[i]] = i;
		}
	}
	return rpidx;
}

//----------------------

int countReplacement(int n, int inputSeq[])
{
	if(!valid(n, inputSeq)) return 0;
	else return 1;
}

컴파일 시 표준 에러 (stderr) 메시지

gondola.cpp: In function 'int replacement(int, int*, int*)':
gondola.cpp:23:2: error: 'fill' was not declared in this scope
   23 |  fill(expect, expect+250005, -1);
      |  ^~~~