제출 #1275386

#제출 시각아이디문제언어결과실행 시간메모리
1275386tm.khoa.tmCats or Dogs (JOI18_catdog)C++20
컴파일 에러
0 ms0 KiB
//I love ManchesterUnited #include<bits/stdc++.h> using namespace std; #define love ManchesterUnited #define int long long #define pb push_back #define FOR(i,a,b) for (int i=(a); i<=(b); i++) #define FORD(i,b,a) for (int i=(b); i>=(a); i--) #define REP(i, n) for(int i=0; i<(n); ++i) #define RED(i, n) for(int i=(n)-1; i>=0; --i) #define endl '\n' const int N = 1005; int n; vector<int> adj[N]; int pet[N]; int dangerLevel() { vector<int> cats, dogs; FOR(i,1,n){ if (pet[i]==1) cats.pb(i); if (pet[i]==2) dogs.pb(i); } if (cats.empty() || dogs.empty()) return 0; int ans = 1e9; for (int c : cats){ queue<int> q; vector<int> dist(n+1,-1); q.push(c); dist[c]=0; while(!q.empty()){ int u = q.front(); q.pop(); if (pet[u]==2){ ans = min(ans, dist[u]); break; } for (int v: adj[u]){ if (dist[v]==-1){ dist[v]=dist[u]+1; q.push(v); } } } } return ans; } void initialize(int N, vector<int> A, vector<int> B){ n = N; FOR(i,1,n){ adj[i].clear(); pet[i]=0; } for (int i = 0; i < N-1; i++){ int u = A[i], v = B[i]; adj[u].pb(v); adj[v].pb(u); } } int cat(int v){ pet[v] = 1; return dangerLevel(); } int dog(int v){ pet[v] = 2; return dangerLevel(); } int neighbor(int v){ pet[v] = 0; return dangerLevel(); }

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

/usr/bin/ld: /tmp/cc8W4teu.o: in function `main':
grader.cpp:(.text.startup+0x1d4): undefined reference to `initialize(int, std::vector<int, std::allocator<int> >, std::vector<int, std::allocator<int> >)'
/usr/bin/ld: grader.cpp:(.text.startup+0x211): undefined reference to `neighbor(int)'
/usr/bin/ld: grader.cpp:(.text.startup+0x250): undefined reference to `dog(int)'
/usr/bin/ld: grader.cpp:(.text.startup+0x261): undefined reference to `cat(int)'
collect2: error: ld returned 1 exit status