답안 #257814

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
257814 2020-08-04T20:47:46 Z monus1042 악어의 지하 도시 (IOI11_crocodile) C++17
컴파일 오류
0 ms 0 KB
#include "crocodile.h"
#include <bits/stdc++.h>
using namespace std;
typedef vector<int> vi;
typedef long long ll;
typedef pair<int,int> ii;
typedef vector<ii> vii;
#define pb push_back
#define mkp make_pair
#define all(X) X.begin(), X.end()

int MAXS = 100002;
vector< pair<int, ll> > g[MAXS];
//vi lev[MAXS];
bool vis[MAXS];
//int p[MAXS];
ll acc[MAXS];
//map <int, vi> slev; // level, nodes here

void dfs(int u){
  vis[u] = 1;
  if (g[u].size() == 1) {
    acc[u] = 0;
    return;
  }
  vector<ll> adj;//w
  for (int i=0; i<g[u].size(); i++){
    int v=g[u][i].first;
    if (!vis[v]){
      //p[v]=u;
      dfs(v);
      adj.pb(acc[v] + g[u][i].second);
    }
  }
  sort(all(adj));
  acc[u] = adj[1];
}

int travel_plan(int N, int M, int R[][2], int L[], int K, int P[]){
  for (int i=0; i<M; i++){
    g[ R[i][0] ].pb(ii( R[i][1] , L[i]));
    g[ R[i][1] ].pb(ii( R[i][0] , L[i]));
  }

  dfs(0);
  //memset(p, -1, sizeof p);
  return (int)acc[u];
}

Compilation message

crocodile.cpp:13:31: error: array bound is not an integer constant before ']' token
 vector< pair<int, ll> > g[MAXS];
                               ^
crocodile.cpp:15:14: error: array bound is not an integer constant before ']' token
 bool vis[MAXS];
              ^
crocodile.cpp:17:12: error: array bound is not an integer constant before ']' token
 ll acc[MAXS];
            ^
crocodile.cpp: In function 'void dfs(int)':
crocodile.cpp:21:3: error: 'vis' was not declared in this scope
   vis[u] = 1;
   ^~~
crocodile.cpp:21:3: note: suggested alternative: 'vii'
   vis[u] = 1;
   ^~~
   vii
crocodile.cpp:22:7: error: 'g' was not declared in this scope
   if (g[u].size() == 1) {
       ^
crocodile.cpp:23:5: error: 'acc' was not declared in this scope
     acc[u] = 0;
     ^~~
crocodile.cpp:27:19: error: 'g' was not declared in this scope
   for (int i=0; i<g[u].size(); i++){
                   ^
crocodile.cpp:32:14: error: 'acc' was not declared in this scope
       adj.pb(acc[v] + g[u][i].second);
              ^~~
crocodile.cpp:36:3: error: 'acc' was not declared in this scope
   acc[u] = adj[1];
   ^~~
crocodile.cpp: In function 'int travel_plan(int, int, int (*)[2], int*, int, int*)':
crocodile.cpp:41:5: error: 'g' was not declared in this scope
     g[ R[i][0] ].pb(ii( R[i][1] , L[i]));
     ^
crocodile.cpp:47:15: error: 'acc' was not declared in this scope
   return (int)acc[u];
               ^~~
crocodile.cpp:47:19: error: 'u' was not declared in this scope
   return (int)acc[u];
                   ^