Submission #805672

#TimeUsernameProblemLanguageResultExecution timeMemory
805672IvanJGondola (IOI14_gondola)C++17
20 / 100
24 ms5120 KiB
#include "gondola.h"
#include<bits/stdc++.h>

#define pb push_back
#define x first
#define y second
#define all(a) (a).begin(), (a).end()

using namespace std;

typedef long long ll;
typedef pair<int, int> ii;

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

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

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

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

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

Compilation message (stderr)

gondola.cpp: In function 'int valid(int, int*)':
gondola.cpp:19:14: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   19 |  if(s.size() != n) return 0;
      |     ~~~~~~~~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...