Submission #805683

#TimeUsernameProblemLanguageResultExecution timeMemory
805683IvanJGondola (IOI14_gondola)C++17
55 / 100
25 ms4556 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 A[], int R[]) { int maxi = 0; for(int i = 0;i < n;i++) maxi = max(maxi, --A[i]); vector<int> v(maxi + 1, -1); for(int i = 0;i < n;i++) v[A[i]] = i; vector<int> poc; for(int i = 0;i < n;i++) poc.pb(i); int pos = -1; for(int i = 0;i < n;i++) if(A[i] < n) pos = i; if(pos != -1) for(int i = pos;i < pos + n;i++) poc[i % n] = (A[pos] + (i - pos)) % n; pos = -1; for(int i = 0;i < n;i++) if(A[i] == maxi) pos = i; int idx = 0; for(int i = n;i <= maxi;i++) { if(v[i] != -1) R[idx++] = poc[v[i]] + 1; else R[idx++] = poc[pos] + 1, poc[pos] = i; } return idx; } //---------------------- 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...