제출 #1204798

#제출 시각아이디문제언어결과실행 시간메모리
1204798ereringGondola (IOI14_gondola)C++20
45 / 100
12 ms2280 KiB
#include "gondola.h" #include <bits/stdc++.h> using namespace std; #define pb push_back int valid(int n, int inputSeq[]) { bool flag=1; int req=-1; for(int i=0;i<n;i++){ if(req==-1 && inputSeq[i]<=n)req=inputSeq[i]+1; else if(inputSeq[i]<=n && req!=inputSeq[i])flag=0; else if(req!=-1)req++; if(req>n)req=1; } return flag; } //---------------------- int replacement(int n, int gondolaSeq[], int replacementSeq[]) { int og[n],crnt=n+1,idx=0; vector<pair<int,int>> vec; for(int i=0;i<n;i++){ og[i]=i+1; if(gondolaSeq[i]<=n){ og[i]=gondolaSeq[i]; for(int j=i+1;j<n;j++){ og[j]=og[j-1]+1; if(og[j]>n)og[j]=1; } if(i>0)og[0]=og[n-1]+1; if(og[0]>n)og[0]=1; for(int j=1;j<i;j++){ og[j]=og[j-1]+1; if(og[j]>n)og[j]=1; } break; } } for(int i=0;i<n;i++)vec.pb({gondolaSeq[i],og[i]}); sort(vec.begin(),vec.end()); for(int i=0;i<n;i++){ while(vec[i].first>=crnt){ replacementSeq[idx++]=vec[i].second; vec[i].second=crnt; crnt++; } } return idx; } //---------------------- 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...