답안 #304995

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
304995 2020-09-22T11:10:00 Z mhy908 기지국 (IOI20_stations) C++14
0 / 100
1 ms 632 KB
#include "stations.h"
#include <bits/stdc++.h>
#define mp make_pair
#define eb emplace_back
#define F first
#define S second
#define all(x) x.begin(), x.end()
#define svec(x) sort(all(x))
#define press(x) x.erase(unique(all(x)), x.end());
using namespace std;
typedef long long LL;
typedef pair<int, int> pii;
typedef pair<int, LL> pil;
typedef pair<LL, int> pli;
typedef pair<LL, LL> pll;
const int INF=1e9;
const LL LLINF=1e18;

int n, re;
vector<int> link[1010], lab, id;

void dfs(int num, int par, int d){
    re++;
    if(d)lab[num-1]=re;
    for(auto i:link[num]){
        if(i==par)continue;
        dfs(i, num, (d+1)%2);
    }
    if(!d)lab[num-1]=re;
    re++;
}

vector<int> label(int _n, int k, vector<int> u, vector<int> v) {
	lab.clear();
	id.clear();
	lab.resize(n);
	n=_n;
	re=0;
	for(int i=0; i<n-1; i++){
        link[u[i]+1].eb(v[i]+1);
        link[v[i]+1].eb(u[i]+1);
	}
	dfs(1, 0, 1);
	for(int i=1; i<=n; i++)link[i].clear();
	for(auto i:lab)id.eb(i);
	svec(id); press(id);
	for(auto &i:lab)i=lower_bound(all(id), i)-id.begin();
	return lab;
}

int find_next_station(int s, int t, vector<int> c){
	if(s<c[0]){
        for(int i=0; i<c.size(); i++){
            if(t<=c[i])return c[i];
        }
	}
	else{
        for(int i=c.size()-1; i>=0; i--){
            if(t>=c[i])return c[i];
        }
	}
}

Compilation message

stations.cpp: In function 'int find_next_station(int, int, std::vector<int>)':
stations.cpp:53:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   53 |         for(int i=0; i<c.size(); i++){
      |                      ~^~~~~~~~~
stations.cpp:62:1: warning: control reaches end of non-void function [-Wreturn-type]
   62 | }
      | ^
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 512 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 632 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 512 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 548 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 528 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -