답안 #334115

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
334115 2020-12-08T10:59:33 Z rocks03 기지국 (IOI20_stations) C++14
0 / 100
5 ms 1276 KB
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define pii pair<int, int>
#define pll pair<ll, ll>
#define ff first
#define ss second
#define pb push_back
#define SZ(x) ((int)(x).size())
#define all(x) x.begin(), x.end()
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

int t;
vector<int> mn;
vector<vector<int>> g;

void dfs(int v, int p, vector<int>& labels){
    mn[v] = INT_MAX;
    for(auto u : g[v]){
        if(u == p)
            continue;
        dfs(u, v, labels);
        mn[v] = min(mn[v], mn[u]);
    }
    labels[v] = t++;
    mn[v] = min(mn[v], labels[v]);
}

vector<int> label(int n, int k, vector<int> u, vector<int> v){
	g.resize(n);
	for(int i = 0; i < n; i++){
        g[i].clear();
	}
	for(int i = 0; i < n-1; i++){
	    g[u[i]].pb(v[i]);
	    g[v[i]].pb(u[i]);
	}
	vector<int> labels(n);
    t = 0;
	mn.resize(n);
	dfs(0, -1, labels);
	return labels;
}

int find_next_station(int s, int t, vector<int> c){
	for(auto x : c){
	    if(x >= t && mn[x] <= t)
	        return x;
	}
	return c.back();
}
# 결과 실행 시간 메모리 Grader output
1 Runtime error 4 ms 1276 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 5 ms 992 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 4 ms 992 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 2 ms 992 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 4 ms 1120 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -