Submission #603176

#TimeUsernameProblemLanguageResultExecution timeMemory
603176mosiashvililuka고대 책들 (IOI17_books)C++14
0 / 100
1 ms320 KiB
#include<bits/stdc++.h>
#include "books.h"
using namespace std;
long long a,b,c,d,e,i,j,ii,jj,zx,xc,f[1000009],S,bo[1000009],G[1000009],pas;
long long minimum_walk(std::vector<int> Pp, int Ss) {
    a=Pp.size();S=Ss+1;
    for(i=1; i<=a; i++) f[i]=Pp[i-1]+1;
    for(i=1; i<=a; i++){
        if(bo[i]==1) continue;
        c=i;zx=i;
        while(1){
            bo[c]=1;zx=max(zx,c);
            c=f[c];
            if(c==i) break;
        }
        G[i]=(zx-c)*2LL;
    }
    zx=1;
    for(i=1; i<=a; i++){
        pas+=G[i];
        if(G[i]!=0) zx=max(zx,i);
    }
    pas+=(zx-1)*2;
    return pas;
}
#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...