제출 #1201716

#제출 시각아이디문제언어결과실행 시간메모리
1201716noop9월 (APIO24_september)C++20
컴파일 에러
0 ms0 KiB
#include "september.h" #include <vector> #include <unordered_set> using namespace std; vector<unordered_set<int> > g; int solve(int N, int M, std::vector<int> F, std::vector<std::vector<int>> S) { g.clear(); int ans=0; unordered_set<int> s; for (int i=1; i<N; i++){ g[F[i]].insert(i); } for (int i=0; i<S[0].size(); i++){ if (g[S[0][i]].size()){ s.insert(S[0][i]); } g[F[S[0][i]]].erase(S[0][i]); if (!g[F[S[0][i]]]].size()){ s.erase(F[S[0][i]]]); } if (!s.size()){ ans++; } } return ans; }

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

september.cpp: In function 'int solve(int, int, std::vector<int>, std::vector<std::vector<int> >)':
september.cpp:19:9: error: no match for 'operator!' (operand type is '__gnu_cxx::__alloc_traits<std::allocator<std::unordered_set<int> >, std::unordered_set<int> >::value_type' {aka 'std::unordered_set<int>'})
   19 |     if (!g[F[S[0][i]]]].size()){
september.cpp:19:9: note: candidate: 'operator!(bool)' (built-in)
september.cpp:19:9: note:   no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::unordered_set<int> >, std::unordered_set<int> >::value_type' {aka 'std::unordered_set<int>'} to 'bool'
september.cpp:19:23: error: expected ')' before ']' token
   19 |     if (!g[F[S[0][i]]]].size()){
      |        ~              ^
      |                       )
september.cpp:19:23: error: expected primary-expression before ']' token