제출 #744325

#제출 시각아이디문제언어결과실행 시간메모리
744325MONEaster Eggs (info1cup17_eastereggs)C++14
컴파일 에러
0 ms0 KiB
#include <vector> #include<cassert> #include "grader.h" using namespace std; vector<int> e,vecini[513]; void dfs(int a = 1,int p = -1) { e.emplace_back(a); for(auto &it : vecini[a]) if(it != p) dfs(it,a); } int findEgg (int N, vector < pair < int, int > > bridges) { for(int i = 1; i <= N ; i++) vecini[i].clear(); for(auto &it : bridges) { vecini[it.first].emplace_back(it.second); vecini[it.second].emplace_back(it.first); } dfs(1,-1,e); assert(e.size() == n + 1); int ans = 0,pas = 1; while(pas <= N) pas <<= 1; for(; pas ; pas >>= 1) { if(ans + pas >= N) continue; if(!query(vector<int>(e.begin() + 1,e.begin() + 1 + (ans + pas)))) ans += pas; } return ans + 1; }

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

eastereggs.cpp: In function 'int findEgg(int, std::vector<std::pair<int, int> >)':
eastereggs.cpp:24:15: error: too many arguments to function 'void dfs(int, int)'
   24 |     dfs(1,-1,e); assert(e.size() == n + 1);
      |               ^
eastereggs.cpp:8:6: note: declared here
    8 | void dfs(int a = 1,int p = -1)
      |      ^~~
In file included from /usr/include/c++/10/cassert:44,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:33,
                 from grader.h:1,
                 from eastereggs.cpp:3:
eastereggs.cpp:24:37: error: 'n' was not declared in this scope
   24 |     dfs(1,-1,e); assert(e.size() == n + 1);
      |                                     ^