제출 #272180

#제출 시각아이디문제언어결과실행 시간메모리
272180errayEaster Eggs (info1cup17_eastereggs)C++17
0 / 100
2 ms640 KiB
// author: erray
#include<bits/stdc++.h>
#include "grader.h"
 
using namespace std;

int findEgg(int n, vector<pair<int, int>> edges) {
  vector<vector<int>> g(n);
  for (auto e : edges) {
    g[e.first - 1].push_back(e.second - 1);
    g[e.second - 1].push_back(e.first - 1);
  }
  vector<int> ask;
  function<void(int, int)> dfs = [&](int v, int pr) {
    ask.push_back(v);
    for (auto u : g[v]) {
      if (u == pr) continue;
      dfs(u, v);
    }
  };
  dfs(0, -1);
  assert(ask.size() == n);
  int s = 0, e = n - 1;
  while (s != e) {
    int mid = (s + e) >> 1;
    vector<int> q;
    for (int i = 0; i <= mid; ++i) q.push_back(ask[i] + 1);
    if (query(q)) e = mid;
    else s = mid + 1;
  }
  return ask[s];
  return 1;
}
 

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

In file included from /usr/include/c++/9/cassert:44,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:33,
                 from grader.h:1,
                 from eastereggs.cpp:3:
eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:22:21: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   22 |   assert(ask.size() == n);
      |          ~~~~~~~~~~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...