Submission #285508

#TimeUsernameProblemLanguageResultExecution timeMemory
285508erd1Gondola (IOI14_gondola)C++14
20 / 100
42 ms4736 KiB
#include "gondola.h" #include<bits/stdc++.h> using namespace std; #define ff first #define ss second #define all(x) (x).begin(), (x).end() #define pb push_back typedef int64_t lld; typedef pair<int, int> pii; typedef long double ld; int valid(int n, int inputSeq[]) { set<int> uses, xs; for(int i = 0; i < n; i++)xs.insert(inputSeq[i]); if(xs.size() != n)return 0; if(*xs.begin() > n)return 1; rotate(inputSeq, find(inputSeq, inputSeq+n, *xs.begin()), inputSeq+n); assert(*xs.begin() == inputSeq[0]); if(*xs.begin() != 1) rotate(inputSeq, inputSeq+(n-*xs.begin()+1), inputSeq+n); for(int i = 0; i < n; i++) if(inputSeq[i] == i+1) continue; else if(inputSeq[i] <= n)return 0; else if(uses.count(inputSeq[i])) return 0; else uses.insert(inputSeq[i]); return 1; } //---------------------- int replacement(int n, int gondolaSeq[], int replacementSeq[]) { map<int, int> mp; for(int i = 0; i < n; i++)if(gondolaSeq[i] > n)mp[gondolaSeq[i]] = i; int cur = 0; for(auto i: mp){ int l = i.ss; while(cur <= i.ff) replacementSeq[cur] = l, l = cur++; } return cur; } //---------------------- int countReplacement(int n, int inputSeq[]) { return -3; }

Compilation message (stderr)

gondola.cpp: In function 'int valid(int, int*)':
gondola.cpp:15:16: warning: comparison of integer expressions of different signedness: 'std::set<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   15 |   if(xs.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...