Submission #1300480

#TimeUsernameProblemLanguageResultExecution timeMemory
1300480m.zeeshanrashidGondola (IOI14_gondola)C++20
55 / 100
43 ms10184 KiB
#include "gondola.h" #include "bits/stdc++.h" using namespace std; vector<int>ori; int valid(int n, int seq[]) { vector<int>a(n,0); map<int,int>d; for(int i=0;i<n;i++){ d[seq[i]]++; if(d[seq[i]]>1) return 0; } for(int i=0;i<n;i++){ a[i]=i; if(seq[i]<=n){ a[i]=seq[i]%n; for(int j=i-1;j>=0;j--) a[j]=(a[j+1]-1+n)%n; for(int j=i+1;j<n;j++) a[j]=(a[j-1]+1)%n; break; } } for(auto &i:a) if(i==0) i=n; ori=a; for(int i=0;i<n;i++){ if(seq[i]<=n and a[i]!=seq[i]) return 0; } return 1; } //---------------------- int replacement(int n, int seq[], int seq1[]) { int len=0,ma=0; map<int,int>d; for(int i=0;i<n;i++){ d[seq[i]]=i+1; if(seq[i]>seq[ma]) ma=i; } valid(n,seq); int tem=seq[ma]; len=seq[ma]-n; for(int i=n+1;i<=tem;i++){ int ind; if(d[i]>0) ind=d[i]-1; else ind=ma; seq1[i-n-1]=ori[ind]; ori[ind]=i; // cout<<ind<<endl; } return len; } //---------------------- int countReplacement(int n, int inputSeq[]) { return -3; }
#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...