제출 #546761

#제출 시각아이디문제언어결과실행 시간메모리
546761brunnorezendesStations (IOI20_stations)C++14
0 / 100
772 ms844 KiB
#include "stations.h"
#include <bits/stdc++.h>
#define maxn 1001

using namespace std;

typedef vector <int> vi;
typedef vector <vi> vvi;
int cont;

vi dfs(int n, int x, vvi g, int pai, vi resp, int k){
	int i;
	for(i=0;i<g[x].size();i++){
		if(g[x][i]!=pai){
			resp = dfs(n, g[x][i], g, x, resp, k);
		}
	}
	resp[x] = cont++;
	resp[x] = min(resp[x], k);
	return resp;
}

vi label(int n, int k, vi u, vi v){
	vvi g = vvi(n);
	vi resp = vi(n, 0);
	for(int i=0;i<n-1;i++){
		g[u[i]].push_back(v[i]);
	}
	cont = 1;
	return dfs(n, 0, g, 0, resp, k);
}

int find_next_station(int s, int t, vi c){
	int l=0, r=c.size()-1, mid;
	while(r>l){
		mid = (l+r)/2;
		if(t<=c[mid]){
			r = mid;
		}
		else l = mid+1;
	}
	return c[l];
}

컴파일 시 표준 에러 (stderr) 메시지

stations.cpp: In function 'vi dfs(int, int, vvi, int, vi, int)':
stations.cpp:13:11: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   13 |  for(i=0;i<g[x].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...