제출 #1045243

#제출 시각아이디문제언어결과실행 시간메모리
1045243VMaksimoski008기지국 (IOI20_stations)C++17
0 / 100
1 ms600 KiB
#include "stations.h"
#include <bits/stdc++.h>
using namespace std;

const int maxn = 1005;
vector<int> graph[maxn], L;

void dfs(int u, int p) {
    for(int &v : graph[u]) {
        if(v == p) continue;
        L[v] = L[u] + 1;
        dfs(v, u);
    }
}

vector<int> label(int n, int k, vector<int> u, vector<int> v) {
    for(int i=0; i<n; i++) graph[i].clear(), L[i] = 0;
    for(int i=0; i<n-1; i++) {
        graph[u[i]].push_back(v[i]);
        graph[v[i]].push_back(u[i]);
    }
	L.resize(n);
    for(int i=0; i<n; i++) {
        if(graph[i].size() == 1) {
            dfs(i, i);
            break;
        }
    }
    return L;
}

int find_next_station(int s, int t, vector<int> c) {
	if(s < t) {
        for(int &x : c) if(x > s) return x;
        return -1;
    }

    for(int &x : c) if(x < s) return x;
    return -1;
}
#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...