제출 #1239792

#제출 시각아이디문제언어결과실행 시간메모리
1239792mychecksedadAncient Books (IOI17_books)C++20
0 / 100
0 ms328 KiB
#include "books.h" #include <bits/stdc++.h> using namespace std; #define pb push_back #define pii pair<int,int> #define ff first #define cerr if(false) cerr #define ss second #define vi vector<int> #define all(x) x.begin(),x.end() #define ll long long int const int N = 4e5+100, M = 1e9; long long minimum_walk(std::vector<int> p, int s) { ll ans = 0; int n = p.size(); for(int i = 0; i < n; ++i) ans += abs(p[i] - i); vector<bool> vis(n); int last = 0; ll cost = 0; for(int i = 0; i < n; ++i){ if(!vis[i]){ int v = i; while(!vis[v]){ vis[v] = 1; v = p[v]; } if(p[i] != i && cost == 0){ cost += i-last; last=i; } } } return ans + cost*2; }
#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...