제출 #1303536

#제출 시각아이디문제언어결과실행 시간메모리
1303536ffeyyaae_Bosses (BOI16_bosses)C++20
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; const int N = 5005; int n; vector<int> child[N], adj[N]; bool visit[N]; int sal[N]; void dfs( int u ) { sal[u] = 1; for( auto v : adj[u] ) { dfs(v); sal[u] += sal[v]; } } int main() { ios_base::sync_with_stdio(0);cin.tie(0); cin >> n; for( int i=1;i<=n;i++ ) { int k; cin >> k; for( int j=0;j<k;j++ ) { int a; cin >> a; child[a].push_back(i); } } int mn = 1e9; for( int i=1;i<=n;i++ ) { fill( visit+1, visit+n+1, false ); visit[i] = true; queue<int> q; q.push(i); while( !q.empty() ) { int node = q.front(); q.pop(); adj[node].clear(); for( int cur : child[node] ) { if( visit[cur] ) continue; visit[cur] = true; adj[node].push_back(cur); q.push(cur); } } bool chk = false; for( int j=1;j<=n;j++ ) { if( !visit[j] ) { chk = true; break; } } if( chk ) continue; dfs(i); int sum = 0; for( int j=1;j<=n;j++ ) sum += sal[j]; mn = min( mn, sum ); } cout << mn << "\n"; return 0; }

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

bosses.cpp: In function 'int main()':
bosses.cpp:40:15: error: reference to 'visit' is ambiguous
   40 |         fill( visit+1, visit+n+1, false );
      |               ^~~~~
In file included from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:80,
                 from bosses.cpp:1:
/usr/include/c++/13/variant:1891:5: note: candidates are: 'template<class _Res, class _Visitor, class ... _Variants> constexpr _Res std::visit(_Visitor&&, _Variants&& ...)'
 1891 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
/usr/include/c++/13/variant:1851:5: note:                 'template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...)'
 1851 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
bosses.cpp:9:6: note:                 'bool visit [5005]'
    9 | bool visit[N];
      |      ^~~~~
bosses.cpp:40:24: error: reference to 'visit' is ambiguous
   40 |         fill( visit+1, visit+n+1, false );
      |                        ^~~~~
/usr/include/c++/13/variant:1891:5: note: candidates are: 'template<class _Res, class _Visitor, class ... _Variants> constexpr _Res std::visit(_Visitor&&, _Variants&& ...)'
 1891 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
/usr/include/c++/13/variant:1851:5: note:                 'template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...)'
 1851 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
bosses.cpp:9:6: note:                 'bool visit [5005]'
    9 | bool visit[N];
      |      ^~~~~
bosses.cpp:41:9: error: reference to 'visit' is ambiguous
   41 |         visit[i] = true;
      |         ^~~~~
/usr/include/c++/13/variant:1891:5: note: candidates are: 'template<class _Res, class _Visitor, class ... _Variants> constexpr _Res std::visit(_Visitor&&, _Variants&& ...)'
 1891 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
/usr/include/c++/13/variant:1851:5: note:                 'template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...)'
 1851 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
bosses.cpp:9:6: note:                 'bool visit [5005]'
    9 | bool visit[N];
      |      ^~~~~
bosses.cpp:51:21: error: reference to 'visit' is ambiguous
   51 |                 if( visit[cur] ) continue;
      |                     ^~~~~
/usr/include/c++/13/variant:1891:5: note: candidates are: 'template<class _Res, class _Visitor, class ... _Variants> constexpr _Res std::visit(_Visitor&&, _Variants&& ...)'
 1891 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
/usr/include/c++/13/variant:1851:5: note:                 'template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...)'
 1851 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
bosses.cpp:9:6: note:                 'bool visit [5005]'
    9 | bool visit[N];
      |      ^~~~~
bosses.cpp:52:17: error: reference to 'visit' is ambiguous
   52 |                 visit[cur] = true;
      |                 ^~~~~
/usr/include/c++/13/variant:1891:5: note: candidates are: 'template<class _Res, class _Visitor, class ... _Variants> constexpr _Res std::visit(_Visitor&&, _Variants&& ...)'
 1891 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
/usr/include/c++/13/variant:1851:5: note:                 'template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...)'
 1851 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
bosses.cpp:9:6: note:                 'bool visit [5005]'
    9 | bool visit[N];
      |      ^~~~~
bosses.cpp:60:18: error: reference to 'visit' is ambiguous
   60 |             if( !visit[j] )
      |                  ^~~~~
/usr/include/c++/13/variant:1891:5: note: candidates are: 'template<class _Res, class _Visitor, class ... _Variants> constexpr _Res std::visit(_Visitor&&, _Variants&& ...)'
 1891 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
/usr/include/c++/13/variant:1851:5: note:                 'template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...)'
 1851 |     visit(_Visitor&& __visitor, _Variants&&... __variants)
      |     ^~~~~
bosses.cpp:9:6: note:                 'bool visit [5005]'
    9 | bool visit[N];
      |      ^~~~~