Submission #429162

# Submission time Handle Problem Language Result Execution time Memory
429162 2021-06-15T17:59:05 Z koioi.org-koosaga Meetings (JOI19_meetings) C++17
0 / 100
187 ms 536 KB
#include "meetings.h"
#include <bits/stdc++.h>
using namespace std;
using pi = pair<int, int>;
#define sz(v) ((int)(v).size())
#define all(v) (v).begin(), (v).end()
 
mt19937 rng(0x14004);
int randint(int lb, int ub){ return uniform_int_distribution<int>(lb, ub)(rng); }
 
void bridge(int x, int y){ Bridge(min(x, y), max(x, y)); }
 
void dfs(vector<int> v){
	if(v.size() == 1) return;
	if(v.size() == 2){
		bridge(v[0], v[1]);
		return;
	}
    shuffle(v.begin()+1, v.end(), rng);
    vector<pi> ords;
  vector<int> fuck = {v[0]};
    ords.emplace_back(v[1], v[1]);
	for(int i=2; i<v.size(); i++){
		int q = Query(v[0], v[1], v[i]);
      if(q == v[0]) fuck.push_back(v[i]);
		else ords.emplace_back(q, v[i]);
	}
	sort(ords.begin(), ords.end(), [&](pi a, pi b){
		if(a.first != b.first) return Query(v[0], a.first, b.first) == a.first;
		return a.second < b.second;
	});
	for(int i = 0; i < sz(ords); ){
		int e = i;
      vector<int> w;
		while(e < sz(ords) && ords[i].first == ords[e].first){
			w.push_back(ords[e++].second);
		}
		swap(w[0], *find(all(w), ords[i].first));
		dfs(w);
		if(e < sz(ords)) Bridge(ords[i].first, ords[e].first);
		i = e;
	}
  dfs(fuck);
}
 
void Solve(int N) {
	vector<int> v(N);
	iota(v.begin(), v.end(), 0);
	dfs(v);
}

Compilation message

meetings.cpp: In function 'void dfs(std::vector<int>)':
meetings.cpp:23:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |  for(int i=2; i<v.size(); i++){
      |               ~^~~~~~~~~
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 328 KB Wrong Answer [6]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 328 KB Wrong Answer [6]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 328 KB Wrong Answer [6]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 187 ms 536 KB Wrong Answer [3]
2 Halted 0 ms 0 KB -