제출 #1147858

#제출 시각아이디문제언어결과실행 시간메모리
1147858FaresSTHStations (IOI20_stations)C++20
5 / 100
303 ms532 KiB
#include "bits/stdc++.h" using namespace std; #define mp make_pair #define S second #define F first vector<int> adj[1000]; int dt[1000], t; void dfs(int i) { dt[i] = ++t; for (int j : adj[i]) { if (dt[j]) continue; dfs(j); } } vector<int> label(int n, int k, vector<int> u, vector<int> v) { for (int i = 0; i < n - 1; i++) { adj[u[i]].push_back(v[i]); adj[v[i]].push_back(u[i]); } int rt; for (int i = 0; i < n; i++) if (adj[i].size() == 1) rt = i; dfs(rt); vector<int> res; for (int i = 0; i < n; i++) { res.push_back(dt[i] - 1); adj[i].clear(); dt[i] = 0; t = 0; } return res; } int find_next_station(int s, int t, vector<int> c) { int res = c[0]; if (s < t) for (int i : c) if (i > s) res = i; else for (int i : c) if (i < s) res = i; return res; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...