Submission #250885

# Submission time Handle Problem Language Result Execution time Memory
250885 2020-07-19T10:54:42 Z godwind Gondola (IOI14_gondola) C++14
Compilation error
0 ms 0 KB
#include <iostream>
#include <set>

using namespace std;

int valid(int n, int a[])
{
	set<int> diff;
	for (int i = 0; i < n; ++i) {
		if (a[i] < 1) return 0;
		diff.insert(a[i]);
	}
	if (diff.size() != n) return 0;
	int pos = -1;
	for (int i = 0; i < n; ++i) {
		if (a[i] <= n) {
			pos = i;
			break;
		}
	}
	if (pos == -1) return 1;
	pos = (pos - a[pos] + 1 + n) % n;
	for (int i = 0; i < n; ++i) {
		int need = i + 1;
		int p = (pos + i) % n;
		if (a[p] <= n && a[p] != need) return 0;
	}
	return 1;
}

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

int replacement(int n, int gondolaSeq[], int replacementSeq[])
{
  return -2;
}

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

int countReplacement(int n, int inputSeq[])
{
  return -3;
}

Compilation message

gondola.cpp: In function 'int valid(int, int*)':
gondola.cpp:14:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  if (diff.size() != n) return 0;
      ~~~~~~~~~~~~^~~~
/tmp/ccxBGJYx.o: In function `main':
grader.cpp:(.text.startup+0xc3): undefined reference to `countReplacement'
grader.cpp:(.text.startup+0xe2): undefined reference to `valid'
grader.cpp:(.text.startup+0x106): undefined reference to `replacement'
collect2: error: ld returned 1 exit status