제출 #671529

#제출 시각아이디문제언어결과실행 시간메모리
671529user149Easter Eggs (info1cup17_eastereggs)C++14
0 / 100
1 ms464 KiB
#include<bits/stdc++.h> #include "grader.h" using namespace std; using pii=pair<int,int>; int N; vector<int> adjlist[555]; bool seen[555]; vector<int> preorder={-1}; void init(){ fill(seen,seen+555,0); for(int i=0;i<=554;i++) adjlist[i].clear(); preorder.clear(); preorder.push_back(-1); } void dfs(int node){ seen[node]=1; preorder.push_back(node); for(int child:adjlist[node]){ if(!seen[child]) dfs(child); } } int bsearch(){ int lo=1; int hi=N; vector<int> query_vector; // always a prefix [1..i] while(lo!=hi){ int mid=(lo+hi)/2; while(query_vector.size()-1>=lo) query_vector.pop_back(); for(int i=lo;i<=mid;i++){ query_vector.push_back(preorder[i]); } if(query(query_vector)) hi=mid; else lo=mid+1; } return lo; } int findEgg(int _N, vector<pii> edges){ N=_N; init(); for(pii i:edges){ int a,b; tie(a,b)=i; adjlist[a].push_back(b); adjlist[b].push_back(a); } //dfs(1); //return bsearch(); }

컴파일 시 표준 에러 (stderr) 메시지

eastereggs.cpp: In function 'int bsearch()':
eastereggs.cpp:37:36: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   37 |         while(query_vector.size()-1>=lo) query_vector.pop_back();
      |               ~~~~~~~~~~~~~~~~~~~~~^~~~
eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:62:1: warning: no return statement in function returning non-void [-Wreturn-type]
   62 | }
      | ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...