제출 #1155805

#제출 시각아이디문제언어결과실행 시간메모리
1155805alexdd고대 책들 (IOI17_books)C++20
50 / 100
76 ms19952 KiB
#include "books.h" #include<bits/stdc++.h> using namespace std; int n; int p[1000005]; int maxpref[1000005],minsuff[1000005]; long long minimum_walk(std::vector<int> cit_p, int s) { s++; n = cit_p.size(); for(int i=1;i<=n;i++) p[i] = cit_p[i-1]+1; int ult=0; long long rez=0; for(int i=1;i<=n;i++) { maxpref[i] = max(maxpref[i-1], p[i]); if(p[i]!=i) ult=i; rez += abs(p[i]-i); } minsuff[n+1] = n+1; for(int i=n;i>0;i--) minsuff[i] = min(minsuff[i+1], p[i]); for(int i=2;i<=ult;i++) { if(maxpref[i-1]<i && minsuff[i]>=i) rez+=2; } return rez; }
#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...