답안 #990287

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
990287 2024-05-30T06:10:29 Z xnqs Easter Eggs (info1cup17_eastereggs) C++14
0 / 100
1 ms 600 KB
// omfg why would you use namespace std in a header file like are you ok?????????
// bro why the fuck are you segfaultingggg

#include <iostream>
#include <fstream>
#include <vector>
#include <queue>
#include <utility>
#include <algorithm>
//#include "grader.h"

int findEgg(int n, std::vector<std::pair<int,int>> bridges);
int query(std::vector<int> islands);

void dfs(int k, int p, const std::vector<int>* adj_list, std::vector<int>& tour) {
	tour.emplace_back(k);
	for (const auto& i : adj_list[k]) {
		if (i!=p) {
			dfs(i,k,adj_list,tour);
			tour.emplace_back(k);
		}
	}
}

int findEgg(int n, std::vector<std::pair<int,int>> bridges) {
	// these testcases are actually fucking retarded, nodes can go above n, like that makes no sense and it's not mentioned in the statement
	// bs problem, average info1cup experience
	std::vector<int> adj_list[513];
	std::vector<int> tour;
	int gs = n;
	for (int i = 0; i < 513; i++) {
		adj_list[i].clear();
	}
	tour.clear();
	for (const auto& [a, b] : bridges) {
		adj_list[a].emplace_back(b);
		adj_list[b].emplace_back(a);
	}
		
	dfs(1,0,adj_list,tour);

	int l = 0, r = tour.size()-1;
	int ret = 0;
	while (l<=r) {
		int m = (l+r)/2;
		if (query(std::vector<int>(tour.begin(),tour.begin()+m+1))) {
			ret = m;
			r = m-1;
		}
		else {
			l = m+1;
		}
	}

	ret = tour[ret];
	return ret;
}

Compilation message

eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:35:19: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   35 |  for (const auto& [a, b] : bridges) {
      |                   ^
eastereggs.cpp:30:6: warning: unused variable 'gs' [-Wunused-variable]
   30 |  int gs = n;
      |      ^~
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 600 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 0 ms 600 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 600 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -