답안 #512686

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
512686 2022-01-16T16:41:27 Z AdamGS 기지국 (IOI20_stations) C++17
0 / 100
3000 ms 2097156 KB
#include "stations.h"
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
#define rep(a, b) for(int a = 0; a < (b); ++a)
#define st first
#define nd second
#define pb push_back
#define all(a) a.begin(), a.end()
const int LIM=1e3+7;
vector<int>V[LIM];
vector<int>T;
int lpre=-1;
void DFS(int x, int o, int v) {
	++lpre;
	if(!v) T[x]=lpre;
	for(auto i : V[x]) if(i!=o) DFS(i, x, v^1);
	if(v) T[x]=lpre;
}
vector<int>label(int n, int k, vector<int>u, vector<int>v) {
	rep(i, n-1) {
		V[u[i]].pb(v[i]);
		V[v[i]].pb(u[i]);
	}
	T.resize(n);
	DFS(0, 0, 0);
	return T;
}
int find_next_station(int s, int t, vector<int>c) {
	if(s==0) {
		for(auto i : c) if(i>=t) return i;
	} else if(s>=c[0]) {
		if(t>s || c.size()>1 && t<c[1]) return c[0];
		for(int i=2; i<c.size(); ++i) if(c[i]>t) return c[i-1];
		return c.back();
	} else {
		if(t<s) return c.back();
		for(int i=0; i<c.size()-1; ++i) if(c[i]>=t) return c[i];
		return c.back();
	}
	return 2137;
}

Compilation message

stations.cpp: In function 'int find_next_station(int, int, std::vector<int>)':
stations.cpp:34:24: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
   34 |   if(t>s || c.size()>1 && t<c[1]) return c[0];
stations.cpp:35:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   35 |   for(int i=2; i<c.size(); ++i) if(c[i]>t) return c[i-1];
      |                ~^~~~~~~~~
stations.cpp:39:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   39 |   for(int i=0; i<c.size()-1; ++i) if(c[i]>=t) return c[i];
      |                ~^~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1556 ms 2097156 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 3022 ms 436 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1162 ms 2097156 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 837 ms 520 KB Output is correct
2 Runtime error 919 ms 2097156 KB Execution killed with signal 9
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1985 ms 2097156 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -