제출 #486350

#제출 시각아이디문제언어결과실행 시간메모리
486350NintsiChkhaidzeEaster Eggs (info1cup17_eastereggs)C++14
100 / 100
18 ms448 KiB
#include <bits/stdc++.h> #include "grader.h" #define pb push_back using namespace std; vector <int> v[525]; int in[525],cnt; void dfs(int x,int par){ in[++cnt] = x; for (int j=0;j<v[x].size();j++){ int to = v[x][j]; if (to == par) continue; dfs(to,x); } } int findEgg (int n, vector < pair < int, int > > vec){ for (int i=0;i<vec.size();i++){ int a = vec[i].first,b = vec[i].second; v[a].pb(b),v[b].pb(a); } cnt=0; dfs(1,1); int l = 1,r = n,ANS=0; while(l <= r){ int mid = (l+r)>>1; if (mid == n){ ANS = in[n]; r = n - 1; continue; } vector <int> q; q.clear(); for (int i = 1; i <= mid; i++) q.pb(in[i]); bool check = query(q); if (check) { ANS = in[mid]; r = mid - 1; } else l = mid + 1; } for (int i=1;i<=n;i++) v[i].clear(),in[i]=0; return ANS; }

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

eastereggs.cpp: In function 'void dfs(int, int)':
eastereggs.cpp:11:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   11 |     for (int j=0;j<v[x].size();j++){
      |                  ~^~~~~~~~~~~~
eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:19:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |     for (int i=0;i<vec.size();i++){
      |                  ~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...