답안 #1034933

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1034933 2024-07-25T22:20:14 Z vjudge1 고대 책들 (IOI17_books) C++17
0 / 100
1 ms 600 KB
#include "books.h"
#include<bits/stdc++.h>
using namespace std;
int par[100100];
int abp(int n){
    return par[n]?par[n]=abp(par[n]):n;
}
int merge(int a,int b){
    a=abp(a+1);b=abp(b+1);
    if(a-b)par[a]=b;
    return a!=b;
}
long long minimum_walk(std::vector<int> p, int s) {
    long long ans=0;
    int n=p.size(),K=0;
    map<int,int>mp;
    for(int i=0;i<n;i++)if(i-p[i])mp[i],
        mp[p[i]], ans+=abs(i-p[i]),merge(i,p[i]);
    vector<tuple<int,int,int>>v;
    mp[s];
    for(auto [i,j]:mp){
        auto it=mp.upper_bound(i);
        if(it!=mp.end())
            v.push_back({it->first-i,i,it->first});
    }
    sort(v.begin(),v.end());
    for(auto [w,x,y]:v)
        ans+=w*2*merge(x,y);
    return ans;
}

Compilation message

books.cpp: In function 'long long int minimum_walk(std::vector<int>, int)':
books.cpp:15:20: warning: unused variable 'K' [-Wunused-variable]
   15 |     int n=p.size(),K=0;
      |                    ^
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 344 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Incorrect 0 ms 600 KB 3rd lines differ - on the 1st token, expected: '8', found: '10'
7 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 344 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Incorrect 0 ms 600 KB 3rd lines differ - on the 1st token, expected: '8', found: '10'
7 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 344 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Incorrect 0 ms 600 KB 3rd lines differ - on the 1st token, expected: '8', found: '10'
7 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 348 KB 3rd lines differ - on the 1st token, expected: '3304', found: '4074'
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 344 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Incorrect 0 ms 600 KB 3rd lines differ - on the 1st token, expected: '8', found: '10'
7 Halted 0 ms 0 KB -