Submission #699798

# Submission time Handle Problem Language Result Execution time Memory
699798 2023-02-18T03:34:33 Z Zybg Easter Eggs (info1cup17_eastereggs) C++11
100 / 100
18 ms 360 KB
#include <bits/stdc++.h>
#include "grader.h"

using namespace std;
vector<int> gr[520], order;

void dfs(int u,int pre){
	order.push_back(u);
	for(int i : gr[u]){
		if(i == pre) continue;
		dfs(i,u);
	}
}

int findEgg (int N, vector < pair < int, int > > bridges)
{
	for(int i=1;i<=N;i++) gr[i].clear();
	order.clear();
    for(auto pii : bridges){
    	gr[pii.first].push_back(pii.second);
    	gr[pii.second].push_back(pii.first);
	}
	dfs(1,0);
	int l = 0, r = N-1;
	
	while(l < r){
		int mid = l+r+1 >> 1;
		if(query(vector<int>(order.begin(),order.begin()+mid))) r = mid-1;
		else l = mid;
	}
	return order[l];
	
	return 0; 
}

Compilation message

eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:27:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   27 |   int mid = l+r+1 >> 1;
      |             ~~~^~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 208 KB Number of queries: 4
2 Correct 1 ms 208 KB Number of queries: 4
3 Correct 1 ms 208 KB Number of queries: 4
4 Correct 1 ms 208 KB Number of queries: 4
# Verdict Execution time Memory Grader output
1 Correct 4 ms 336 KB Number of queries: 8
2 Correct 9 ms 344 KB Number of queries: 9
3 Correct 14 ms 348 KB Number of queries: 9
4 Correct 13 ms 336 KB Number of queries: 9
# Verdict Execution time Memory Grader output
1 Correct 18 ms 360 KB Number of queries: 9
2 Correct 10 ms 344 KB Number of queries: 9
3 Correct 14 ms 340 KB Number of queries: 9
4 Correct 13 ms 336 KB Number of queries: 9