Submission #512715

# Submission time Handle Problem Language Result Execution time Memory
512715 2022-01-16T17:02:46 Z AdamGS Stations (IOI20_stations) C++17
0 / 100
822 ms 660 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];
int T[LIM], odw[LIM], l;
void DFS(int x, int v) {
	odw[x]=1;
	if(v%2==0) {
		T[x]=l;
		++l;
	}
	for(auto i : V[x]) if(odw[i]==0) DFS(i, v+1);
	if(v%2==1) {
		T[x]=l;
		++l;
	}
}
vector<int>label(int n, int k, vector<int>u, vector<int>v) {
	rep(i, n) odw[i]=0;
	rep(i, n-1) {
		V[u[i]].pb(v[i]);
		V[v[i]].pb(u[i]);
	}
	DFS(0, 0);
	vector<int>p(n);
	rep(i, n) p[i]=T[i];
	return p;
}
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();
	}
}

Compilation message

stations.cpp: In function 'int find_next_station(int, int, std::vector<int>)':
stations.cpp:41:24: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
   41 |   if(t>s || c.size()>1 && t<c[1]) return c[0];
stations.cpp:42:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   42 |   for(int i=2; i<c.size(); ++i) if(c[i]>t) return c[i-1];
      |                ~^~~~~~~~~
stations.cpp:46:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   46 |   for(int i=0; i<c.size()-1; ++i) if(c[i]>=t) return c[i];
      |                ~^~~~~~~~~~~
stations.cpp:49:1: warning: control reaches end of non-void function [-Wreturn-type]
   49 | }
      | ^
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 456 KB Invalid labels (values out of range). scenario=2, k=1000, vertex=8, label=1001
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 4 ms 440 KB Invalid labels (values out of range). scenario=1, k=1000, vertex=1, label=1507
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 521 ms 636 KB Wrong query response.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 822 ms 512 KB Output is correct
2 Incorrect 758 ms 400 KB Wrong query response.
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 566 ms 660 KB Wrong query response.
2 Halted 0 ms 0 KB -