답안 #74194

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
74194 2018-08-30T12:17:40 Z nvmdava 고대 책들 (IOI17_books) C++17
컴파일 오류
0 ms 0 KB
#include "books.h"
#include <bits/stdc++.h>
using namespace std;
int k = 0;
int r = 0;
int x;
vector<int> p;
bool in[1000001];
void go(int v, long long c){
	if(in[v] == 1){
		k++;
		return;
	}
	in[v] = 1;
	r = max(r, v);
	go(p[v]);
}

long long minimum_walk(vector<int> p, int s) {
	::p = p;
	x = s;
	int q = 0;
	long long ans = 0;
	for(int i = 0; i < p.size(); i++){
		if(in[i] || p[i] == i) continue;
		if(r < i){
			q = i;
		}
		go(i, 0LL);
		ans += (long long)abs(i - p[i]);
	}
	
	ans += (long long) q * 2;
	return ans;
}

Compilation message

books.cpp: In function 'void go(int, long long int)':
books.cpp:16:9: error: too few arguments to function 'void go(int, long long int)'
  go(p[v]);
         ^
books.cpp:9:6: note: declared here
 void go(int v, long long c){
      ^~
books.cpp: In function 'long long int minimum_walk(std::vector<int>, int)':
books.cpp:24:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i = 0; i < p.size(); i++){
                 ~~^~~~~~~~~~