제출 #1249590

#제출 시각아이디문제언어결과실행 시간메모리
1249590FernandoJC07세계 지도 (IOI25_worldmap)C++20
컴파일 에러
0 ms0 KiB
//#include "worldmap"
#include <vector>
#include <queue>
using namespace std;
#define vi vector<int>
#define vii vector<vector<int>>
#define For(i, a, n) for(int i = a; i<n; ++i)
#define pb push_back

vii create_map(int N, int M, vi A, vi B){
    vii adj, mapa;
    vi vst;
    adj.resize(N+1);
    vst.resize(N+1, 0);

    For(i, 0, M) {adj[A[i]].pb(B[i]); adj[B[i]].pb(A[i]);}
        
    function<void(int)> dfs = [&](int a){
        mapa.pb({a});
        vi res;
        vst[a] = 1;
        for(int x: adj[a]){
            res.pb(a); res.pb(x);
        }
        mapa.pb(res);
        mapa.pb({a});
        for(int x: adj[a]){
            if(vst[x]) continue;
            dfs(x);
        }
    };
    
    dfs(1);
    int k = mapa.size();
    For(i, 0, k){
        int m = k-mapa[i].size();
        while(m--){mapa[i].pb(mapa[i][0]);}
    }
    return mapa;    
}

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

worldmap.cpp: In function 'std::vector<std::vector<int> > create_map(int, int, std::vector<int>, std::vector<int>)':
worldmap.cpp:18:5: error: 'function' was not declared in this scope
   18 |     function<void(int)> dfs = [&](int a){
      |     ^~~~~~~~
worldmap.cpp:4:1: note: 'std::function' is defined in header '<functional>'; did you forget to '#include <functional>'?
    3 | #include <queue>
  +++ |+#include <functional>
    4 | using namespace std;
worldmap.cpp:18:14: error: expected primary-expression before 'void'
   18 |     function<void(int)> dfs = [&](int a){
      |              ^~~~
worldmap.cpp:33:5: error: 'dfs' was not declared in this scope
   33 |     dfs(1);
      |     ^~~