Submission #957702

# Submission time Handle Problem Language Result Execution time Memory
957702 2024-04-04T08:28:20 Z Oggy Bosses (BOI16_bosses) C++14
100 / 100
468 ms 48744 KB
#include<bits/stdc++.h>
// #define file "C:\\Users\\PC VUI\\Desktop\\CWistor\\VSCODE\\name"
#define file "bosses"
using namespace std; 

#define ll long long
#define MAX 100100
#define fi first
#define se second
#define ull unsigned long long
#define pii pair<int,int>
#define pll pair<ll,ll>
#define vi vector<int>
#define vl vector<long long>
#define mem(a, b) memset((a), (b), sizeof((a)))
#define all(c) (c).begin(), (c).end()
const int MOD = 1e9 + 7;
const int N = 2e6 + 6;
const ll M = (ll)1e18 + 7LL;
const ll INF = 1e18;
ll n, k, ind = 0, v;
vector<ll> adj[N];
ll vst[N];
queue<pll> q;
void run_with_file()
{
	if (fopen(file".inp", "r"))
	{
		freopen(file".inp", "r", stdin);
		freopen(file".out", "w", stdout);
	}
}
ll calc(ll v){
	q.push({v, 1});
	ll total = 0;
	vst[v] = ind;
	while(!q.empty()){
		pll x = q.front(); q.pop();
		total+= x.se;
		for(auto u : adj[x.fi]){
			if(vst[u] != ind){
				vst[u] = ind;
				q.push({u, x.se + 1});
			}
		}
	}
	for(ll i = 1; i <= n; ++i){
		if(vst[i] != ind) return INF;
	}
	return total;
}
void inp(){
	cin >> n;
	for(ll i = 1; i <= n; ++i){
		cin >> k;
		for(ll j = 1; j <= k; ++j){
			cin >> v;
			adj[v].push_back(i);
		}
	}
	ll minx = INF;
	for(ll i = 1; i <= n; ++i){
		ind++;
		minx = min(minx, calc(i));
	}
	cout << minx;
}
int main()
{
	cin.tie(0)->sync_with_stdio(0);
	run_with_file(); 
	inp();
}

Compilation message

bosses.cpp: In function 'void run_with_file()':
bosses.cpp:29:10: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   29 |   freopen(file".inp", "r", stdin);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
bosses.cpp:30:10: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   30 |   freopen(file".out", "w", stdout);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 13 ms 48476 KB Output is correct
2 Correct 11 ms 48536 KB Output is correct
3 Correct 11 ms 48336 KB Output is correct
4 Correct 11 ms 48324 KB Output is correct
5 Correct 11 ms 48476 KB Output is correct
6 Correct 12 ms 48476 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 13 ms 48476 KB Output is correct
2 Correct 11 ms 48536 KB Output is correct
3 Correct 11 ms 48336 KB Output is correct
4 Correct 11 ms 48324 KB Output is correct
5 Correct 11 ms 48476 KB Output is correct
6 Correct 12 ms 48476 KB Output is correct
7 Correct 11 ms 48476 KB Output is correct
8 Correct 12 ms 48476 KB Output is correct
9 Correct 13 ms 48728 KB Output is correct
10 Correct 12 ms 48476 KB Output is correct
11 Correct 12 ms 48348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 13 ms 48476 KB Output is correct
2 Correct 11 ms 48536 KB Output is correct
3 Correct 11 ms 48336 KB Output is correct
4 Correct 11 ms 48324 KB Output is correct
5 Correct 11 ms 48476 KB Output is correct
6 Correct 12 ms 48476 KB Output is correct
7 Correct 11 ms 48476 KB Output is correct
8 Correct 12 ms 48476 KB Output is correct
9 Correct 13 ms 48728 KB Output is correct
10 Correct 12 ms 48476 KB Output is correct
11 Correct 12 ms 48348 KB Output is correct
12 Correct 14 ms 48472 KB Output is correct
13 Correct 14 ms 48472 KB Output is correct
14 Correct 123 ms 48656 KB Output is correct
15 Correct 14 ms 48476 KB Output is correct
16 Correct 452 ms 48744 KB Output is correct
17 Correct 468 ms 48732 KB Output is correct
18 Correct 437 ms 48728 KB Output is correct