# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
218858 | 2020-04-02T21:26:02 Z | Kenzo_1114 | Gondola (IOI14_gondola) | C++17 | 0 ms | 0 KB |
#include "gondola.h" #include<bits/stdc++.h> using namespace std; const int MAXN = 100010; int correct[MAXN]; int valid(int n, int seq[]) { int id = 0; for(int i = 0; i < n; i++) if(seq[i] <= n) { id = i; break; } int val = seq[id]; correct[id] = seq[id]; for(int i = id + 1; i < n; i++) { correct[i] = correct[i - 1] + 1; if(correct[i] > n) correct[i] = 1; } for(int i = id - 1; i >= 0; i--) { correct[i] = correct[i + 1] - 1; if(correct[i] < 1) correct[i] = n; } for(int i = 0; i < n; i++) if(seq[i] <= n && correct[i] != seq[i]) return 0; return 1; } /* int N, SEQ[MAXN]; int main () { scanf("%d", &N); for(int i = 0; i < N; i++) scanf("%d", &SEQ[i]); printf("%d\n", valid(N, SEQ)); } */