Submission #20792

#TimeUsernameProblemLanguageResultExecution timeMemory
20792rose0310Gondola (IOI14_gondola)C++14
10 / 100
16 ms2956 KiB
#include "gondola.h"

int valid(int n, int inputSeq[])
{
	int f=1,min=9999999,mini;
	for(int i=0;i<n;i++){
		if(min>inputSeq[i]) { min=inputSeq[i]; mini=i;}
	}
	if(min>n) return 1;
	mini=(mini-inputSeq[mini]+1+n)%n;
	inputSeq[mini]=1;
	for(int i=mini;i<mini+n-1;i++){
		if(inputSeq[(i+1)%n]>n) inputSeq[(i+1)%n]=inputSeq[(i%n)]+1;
		if(inputSeq[(i+1)%n]>inputSeq[(i%n)]) continue;
		f=0; break;
	}
	int v[151515]={};
	for(int i=0;i<n;i++){
		if(v[inputSeq[i]]) {f=0; break;}
		v[inputSeq[i]]=1;
	}
	return f;
}

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

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:10:26: warning: 'mini' may be used uninitialized in this function [-Wmaybe-uninitialized]
  mini=(mini-inputSeq[mini]+1+n)%n;
                          ^
#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...