제출 #695115

#제출 시각아이디문제언어결과실행 시간메모리
695115Farhan_HYBosses (BOI16_bosses)C++14
100 / 100
642 ms24140 KiB
#include <bits/stdc++.h> #define int long long #define float double #define pb push_back #define F first #define S second #define T int t; cin >> t; while(t--) #define IOS ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); using namespace std; /// Benzema is the best player in the world const int N = 1e6 + 6; const int M = 1e3 + 3; const int mod = 1e9 + 7; const int inf = 1e9; const int dx[] = {-1, 1, 0, 0}; const int dy[] = {0, 0, -1, 1}; const int LOG = 28; int n, cnt[N]; vector<int> adj[N]; queue<int> q; pair<int, int> bfs(int node) { int count = 1; q.push(node); cnt[node] = 1; int ans = 1; while(!q.empty()) { int u = q.front(); q.pop(); for(auto x: adj[u]) { if (cnt[x]) continue; cnt[x] = cnt[u] + 1; ans += cnt[x]; count++; q.push(x); } } return {ans, count}; } main() { IOS cin >> n; for(int i = 1; i <= n; i++) { int k; cin >> k; for(int j = 1; j <= k; j++) { int u; cin >> u; adj[u].push_back(i); } } int ans = inf; for(int i = 1; i <= n; i++) { for(int j = 1; j <= n; j++) cnt[j] = 0; pair<int, int> p = bfs(i); if (p.S == n) ans = min(ans, p.F); } cout << ans; }

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

bosses.cpp:42:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   42 | main() {
      | ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...