# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
284192 | 2020-08-27T01:55:45 Z | Bill_00 | Gondola (IOI14_gondola) | C++14 | 0 ms | 0 KB |
#include <stdlib.h> #include "gondola.h" int valid(int n, int a[]) { int k[250000]={0}; int y[250000]={0},d=0; for(int i=0;i<n;i++){ k[a[i]]++; } for(int i=0;i<n;i++){ if(k[a[i]]>1) return 0; } for(int i=0;i<n;i++){ if(a[i]<=n){ if(y[(a[i]-i+n)%n]==0) d++; y[(a[i]-i+n)%n]++; } } if(d<=1) return 1; return 0; } //---------------------- int replacement(int n, int gondolaSeq[], int replacementSeq[]) { int y[100000]={0}; for(int i=0;i<n;i++){ if(a[i]<=n){ if(y[(a[i]-i+n)%n]==0) d++; y[(a[i]-i+n)%n]++; } } int e=0; for(int i=0;i<n;i++){ e=max(e,y[i]); } return n-e; } //---------------------- int countReplacement(int n, int inputSeq[]) { return -3; }