제출 #212655

#제출 시각아이디문제언어결과실행 시간메모리
212655mohamedsobhi777Gondola (IOI14_gondola)C++14
55 / 100
26 ms2808 KiB
#include <bits/stdc++.h>
#include "gondola.h"
using namespace std ; 

const int N = 3e5 + 7 ; 

int valid(int n, int inputSeq[]){

    vector<int> vis(N , 0) ; 
    int cur = inputSeq[0] -1  ; 
    for(int i = 0 ; i < n; i++){
        if(vis[inputSeq[i]]++)return 0 ; 
        if(--inputSeq[i]!=cur)
            return 0 ; 
        cur = (cur+1) %n ; 
    }
    return 1 ; 
}

int ab[N] ; 
 
int replacement(int n, int gondolaSeq[], int replacementSeq[])
{
    int proto[N] ; 
    for(int i = 0 ; i <n; i++)proto[i] = i+1 ; 

    for(int i =  0 ; i <n; i++){
        if(gondolaSeq[i] <=n){
            int k = gondolaSeq[i] +1; 
            proto[i] = gondolaSeq[i] ; 
            if(k==n+1)k=1 ;
            for(int j = 1 ; j < n ;j++){
                int loc = (i+j)%n; 
                proto[loc] = k++ ; 
                if(k==n+1)k = 1 ; 
            }          
            break;
        }
    }
    int cur = 0 , ladder = n +1 ; 
    
    vector< pair<int, int > > q ; 
    for(int i = 0 ; i < n ;i++){
        q.push_back({gondolaSeq[i] , proto[i]});
    }
    sort(q.begin(), q.end()) ; 
    for(int i= 0 ; i < n; i++){
        int fr = q[i].first , se = q[i] .second ; 
        while(se < fr){   
            replacementSeq[cur++] = se ; 
            se = ladder ++ ;
        }
    }
    return cur ; 
}

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...