제출 #1314999

#제출 시각아이디문제언어결과실행 시간메모리
1314999PlayVoltz가장 긴 여행 (IOI23_longesttrip)C++20
컴파일 에러
0 ms0 KiB
#include "longesttrip.h"
#include <bits/stdc++.h>
using namespace std;

#define pb push_back
#define mp make_pair
#define pii pair<int, int>
#define fi first
#define se second

vector<int> longest_trip(int n, int d){
	if (d==3){
		vector<int> ans;
		for (int i=0; i<n; ++i)ans.pb(i);
		return ans;
	}
	else if (d==2){
		deque<int> ans(1, 0);
		int done=1;
		if (are_connected({0}, {1}))ans.pb(1);
		else ans.pb(2), done=2;
		for (int i=1; i<n; ++i)if (i!=done){
			if (are_connected({i, ans.back()}))ans.pb(i);
			else ans.push_front(i);
		}
		return ans;
	}
}

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

longesttrip.cpp: In function 'std::vector<int> longest_trip(int, int)':
longesttrip.cpp:23:42: error: too few arguments to function 'bool are_connected(std::vector<int>, std::vector<int>)'
   23 |                         if (are_connected({i, ans.back()}))ans.pb(i);
      |                             ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
In file included from longesttrip.cpp:1:
longesttrip.h:5:6: note: declared here
    5 | bool are_connected(std::vector<int> A, std::vector<int> B);
      |      ^~~~~~~~~~~~~
longesttrip.cpp:26:24: error: could not convert 'ans' from 'std::deque<int>' to 'std::vector<int>'
   26 |                 return ans;
      |                        ^~~
      |                        |
      |                        std::deque<int>