Submission #953511

# Submission time Handle Problem Language Result Execution time Memory
953511 2024-03-26T05:02:34 Z koukirocks Viruses (BOI20_viruses) C++17
0 / 100
700 ms 600 KB
#include <bits/stdc++.h>
#define speed ios_base::sync_with_stdio(0); cin.tie(0)
#define all(x) (x).begin(),(x).end()
#define F first
#define S second
#pragma GCC optimize("O3")
#pragma GCC target("avx2")
 
namespace{using namespace std;}
typedef long long ll;
typedef double db;
typedef long double ldb;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;
 
const ll MAX=100+10,P=1e9+7;
const ll INF=0x3f3f3f3f,oo=0x3f3f3f3f3f3f3f3f;
const ldb eps=1e-6;

int g,n,m;
vector<vector<int> > GT[MAX];

int main() {
	speed;
	cin>>g>>n>>m;
	for (int i=0;i<n;i++) {
		int a,k;
		vector<int> mut;
		cin>>a>>k;
		while (k--) {
			int x;
			cin>>x;
			mut.push_back(x);
		}
		GT[a].push_back(mut);
	}
	int ans[MAX];
	memset(ans,-1,sizeof(ans));
	ans[0]=1;
	ans[1]=1;
	int cnt=g-2;
	while (cnt) {
		for (int i=2;i<g;i++) {
			for (auto st:GT[i]) {
				for (int k:st) {
					if (ans[k]==-1) {
						goto skip;
					}
				}
			}
			ans[i]=INF;
			for (auto st:GT[i]) {
				int ttl=0;
				for (int k:st) {
					ttl+=ans[k];
				}
				ans[i]=min(ans[i],ttl);
			}
			cnt--;
			skip:;
		}
	}
	for (int i=0;i<g;i++) {
		cout<<"NO "<<ans[i]<<"\n";
	}
	return 0;
}
# Verdict Execution time Memory Grader output
1 Execution timed out 1038 ms 600 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1038 ms 600 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1038 ms 600 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1038 ms 600 KB Time limit exceeded
2 Halted 0 ms 0 KB -