제출 #68731

#제출 시각아이디문제언어결과실행 시간메모리
68731TalantAncient Books (IOI17_books)C++17
0 / 100
2 ms364 KiB
#include "books.h"
//#include "grader.cpp"

#include <bits/stdc++.h>

#define sc second
#define fr first
#define mk make_pair
#define pb push_back

using namespace std;

const int N = (1e6 + 5);
const int inf = (1e9 + 7);

int f;
int cur = -1,id;
int u[N];
int ans;

long long minimum_walk(vector<int> p, int s) {
      for (int i = 0; i < p.size(); i ++)
            u[p[i]] = i;

      for (int i = p.size() - 1; i >= 0; i --) {
            if (p[i] != i) {
                  if (cur == i) {
                        ans += abs(i - id);
                        swap(cur,p[i]);
                        id = i;
                  }
                  else {
                        ans += abs(u[i] - id) + abs(u[i] - i);
                        if (cur != -1)
                              swap(p[u[i]],cur);

                        cur = i;
                        swap(cur,p[i]);
                        id = i;
                  }
            }
      }
      return (ans + id);
}

컴파일 시 표준 에러 (stderr) 메시지

books.cpp: In function 'long long int minimum_walk(std::vector<int>, int)':
books.cpp:22:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       for (int i = 0; i < p.size(); i ++)
                       ~~^~~~~~~~~~
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…