Submission #1310970

#TimeUsernameProblemLanguageResultExecution timeMemory
1310970AhmadAlhussain기지국 (IOI20_stations)C++20
0 / 100
3062 ms2162688 KiB
#include<bits/stdc++.h>
#include <vector>
using namespace std;
const int N=1005;
int a[N]={};vector<int>wss[N];
void dfs(int node,int past,int cnt) {
    a[node]=cnt;
    for(int i:wss[node]) {
        if(i!=past) {
            dfs(i,node,cnt+1);
        }
    }
}
std::vector<int> label(int n, int k, std::vector<int> u, std::vector<int> v) {
    int cnt[N]={};
    std::vector<int> labels(n);
    for (int i = 0; i < n-1; i++) {
        wss[u[i]].push_back(v[i]);
        wss[v[i]].push_back(u[i]);
        cnt[i]++;
    }
    for(int i=0;i<n;i++) {
        if(cnt[i]==1) {
            dfs(i,-1,0);
            break;
        }
    }
    for(int i=0;i<n;i++) {
        labels[i]=a[i];
    }
    return labels;
}

int find_next_station(int s, int t, std::vector<int> c) {
    if(t<s) {
        return c[0];
    }
    return c[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...