Submission #397811

# Submission time Handle Problem Language Result Execution time Memory
397811 2021-05-03T07:38:31 Z cfalas Stations (IOI20_stations) C++14
0 / 100
1079 ms 520 KB
#include "stations.h"
#include<bits/stdc++.h>
using namespace std;
#define mp make_pair
#define INF 10000000
#define MOD 1000000007
#define MID ((l+r)/2)
#define HASHMOD 2305843009213693951
#define ll long long
#define ull unsigned long long
#define F first
#define S second
typedef pair<ll, ll> ii;
typedef pair<ii, int> iii;
typedef vector<int> vi;
typedef vector<ii> vii;
typedef map<int, int> mii;

#define EPS 1e-6
#define FOR(i,n) for(int i=0;i<((int)(n));i++)
#define FORi(i,a,b) for(int i=((int)(a));i<((int)(b));i++)
#define FOA(v, a) for(auto v : a)

vi label(int n, int k, std::vector<int> u, std::vector<int> v) {
	vi labels(n);
	FOR(i,n) labels[i] = i;
	return labels;
}

int find_next_station(int s, int t, std::vector<int> c) {
	//cout<<s<<" "<<t<<endl;
	//int ors=s, ort=t;
	int a=s, b=t;
	while(a!=b){
		if(a>b) a=(a-1)/2;
		else b=(b-1)/2;
	}
	if(a<s) return (s-1)/2;
	//cout<<"No\n";

	int prev=-1;
	while(t){
		prev = t;
		t=(t-1)/2;
		if(s==t) break;
	}
	assert(prev!=-1);
	//cout<<ors<<" "<<ort<<" "<<2*s+2-(prev%2)<<endl;
	return 2*s+1+(prev%2);
}
# Verdict Execution time Memory Grader output
1 Incorrect 572 ms 492 KB Wrong query response.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 569 ms 404 KB Wrong query response.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 664 ms 492 KB Wrong query response.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1079 ms 520 KB Wrong query response.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 628 ms 492 KB Wrong query response.
2 Halted 0 ms 0 KB -