Submission #517049

#TimeUsernameProblemLanguageResultExecution timeMemory
517049Ai7081Stations (IOI20_stations)C++17
0 / 100
2257 ms2097156 KiB
#include <bits/stdc++.h>
using namespace std;
const int N = 1005;

int cnt;
vector<int> adj[N], ret;

void dfs1(int v, int p) {
    ret[v] = cnt++;
    for (auto to : adj[v]) {
        if (to != p) {
            dfs1(to, v);
        }
    }
    return;
}

vector<int> label(int n, int k, vector<int> u, vector<int> v) {
    for (int i=0; i<u.size(); i++) {
        adj[u[i]].push_back(v[i]);
        adj[v[i]].push_back(u[i]);
    }
    for (int i=0; i<n; i++) {
        if (adj[i].size() == 1) {
            ret.assign(n, 0);
            cnt = 0;
            dfs1(i, i);
            return ret;
        }
    }
    return ret;
}

int find_next_station(int s, int t, vector<int> c) {
    return (s < t) ? s+1 : s-1;
}

Compilation message (stderr)

stations.cpp: In function 'std::vector<int> label(int, int, std::vector<int>, std::vector<int>)':
stations.cpp:19:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |     for (int i=0; i<u.size(); i++) {
      |                   ~^~~~~~~~~
#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...