제출 #533216

#제출 시각아이디문제언어결과실행 시간메모리
533216andecaandeciBosses (BOI16_bosses)C++17
100 / 100
681 ms688 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long ll n; vector<ll> adj[5005]; ll dist[5005]; bool vis[5005]; ll bfs(ll x, ll sum) { queue <ll> q; q.push(x); dist[x] = 1; vis[x] = true; int cnt = 0; while(!q.empty()) { ll cur = q.front(); cnt++; q.pop(); for(ll i = 0; i < adj[cur].size(); i++) { ll next = adj[cur][i]; if (!vis[next]) { vis[next] = true; dist[next] = dist[cur] + 1; sum += dist[next]; q.push(next); } } } if (cnt >= n) { return sum; } return 1e16; } void init() { for(int i = 1; i <= n; i++) { vis[i] = false; } } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> n; for(ll i = 1; i <= n; i++) { ll k; cin >> k; for(ll j = 0; j < k; j++) { ll next; cin >> next; adj[next].push_back(i); //cout << next << " " << i << endl; } } ll mn = 1e16; for(ll i = 1; i <= n; i++) { init(); int ans = bfs(i, 1); if (ans < mn) { mn = ans; } } cout << mn << "\n"; }

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

bosses.cpp: In function 'long long int bfs(long long int, long long int)':
bosses.cpp:19:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |     for(ll i = 0; i < adj[cur].size(); i++) {
      |                   ~~^~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...