Submission #39777

# Submission time Handle Problem Language Result Execution time Memory
39777 2018-01-18T13:19:34 Z nonocut Bosses (BOI16_bosses) C++14
Compilation error
0 ms 0 KB
#include<bits/stdc++.h>
using namespace std;

#define ll long long
const int maxn = 5e3 + 5;
const int inf = 1e8;

int n;
int vis[maxn], val[maxn];
vector<int> way[maxn], p[maxn];
queue<int> q;

void dfs(int u) {
    val[u] = 1;
	for(auto v : p[u]) dfs(v), val[u] += val[v];
}

ll bfs(int u) {
    int i;
	for(i=1;i<=n;i++) {
        p[i].clear();
        vis[i] = 0;
        val[i] = inf;
    }

	vis[u] = 1;
	q.push(u);
	while(!q.empty()) {
		int x = q.front(); q.pop();
		for(auto y : way[x]) {
			if(!vis[y]) {
				vis[y] = 1;
				p[x].push_back(y);
				q.push(y);
			}
		}
	}

	dfs(u);

	int ans = 0;
	for(i=1;i<=n;i++) ans += val[i];
	return ans;
}
int main() {
	int i,x,k;

	scanf("%d",&n);
	for(i=1;i<=n;i++) {
		scanf("%d",&k);
		while(k--) {
			scanf("%d",&x);
			way[x].push_back(i);
		}
	}

	int ans = inf;
	for(i=1;i<=n;i++) ans = min(ans, bfs(i));
	printf("%lld",ans);
}

Compilation message

bosses.cpp: In function 'int main()':
bosses.cpp:58:41: error: no matching function for call to 'min(int&, long long int)'
  for(i=1;i<=n;i++) ans = min(ans, bfs(i));
                                         ^
In file included from /usr/include/c++/5/bits/char_traits.h:39:0,
                 from /usr/include/c++/5/ios:40,
                 from /usr/include/c++/5/istream:38,
                 from /usr/include/c++/5/sstream:38,
                 from /usr/include/c++/5/complex:45,
                 from /usr/include/c++/5/ccomplex:38,
                 from /usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h:52,
                 from bosses.cpp:1:
/usr/include/c++/5/bits/stl_algobase.h:195:5: note: candidate: template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)
     min(const _Tp& __a, const _Tp& __b)
     ^
/usr/include/c++/5/bits/stl_algobase.h:195:5: note:   template argument deduction/substitution failed:
bosses.cpp:58:41: note:   deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
  for(i=1;i<=n;i++) ans = min(ans, bfs(i));
                                         ^
In file included from /usr/include/c++/5/bits/char_traits.h:39:0,
                 from /usr/include/c++/5/ios:40,
                 from /usr/include/c++/5/istream:38,
                 from /usr/include/c++/5/sstream:38,
                 from /usr/include/c++/5/complex:45,
                 from /usr/include/c++/5/ccomplex:38,
                 from /usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h:52,
                 from bosses.cpp:1:
/usr/include/c++/5/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
     min(const _Tp& __a, const _Tp& __b, _Compare __comp)
     ^
/usr/include/c++/5/bits/stl_algobase.h:243:5: note:   template argument deduction/substitution failed:
bosses.cpp:58:41: note:   deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
  for(i=1;i<=n;i++) ans = min(ans, bfs(i));
                                         ^
In file included from /usr/include/c++/5/algorithm:62:0,
                 from /usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h:64,
                 from bosses.cpp:1:
/usr/include/c++/5/bits/stl_algo.h:3445:5: note: candidate: template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)
     min(initializer_list<_Tp> __l)
     ^
/usr/include/c++/5/bits/stl_algo.h:3445:5: note:   template argument deduction/substitution failed:
bosses.cpp:58:41: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
  for(i=1;i<=n;i++) ans = min(ans, bfs(i));
                                         ^
In file included from /usr/include/c++/5/algorithm:62:0,
                 from /usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h:64,
                 from bosses.cpp:1:
/usr/include/c++/5/bits/stl_algo.h:3451:5: note: candidate: template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)
     min(initializer_list<_Tp> __l, _Compare __comp)
     ^
/usr/include/c++/5/bits/stl_algo.h:3451:5: note:   template argument deduction/substitution failed:
bosses.cpp:58:41: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
  for(i=1;i<=n;i++) ans = min(ans, bfs(i));
                                         ^
bosses.cpp:59:19: warning: format '%lld' expects argument of type 'long long int', but argument 2 has type 'int' [-Wformat=]
  printf("%lld",ans);
                   ^
bosses.cpp:48:16: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d",&n);
                ^
bosses.cpp:50:17: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d",&k);
                 ^
bosses.cpp:52:18: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",&x);
                  ^