社区讨论

求帮助 悬赏1关注

灌水区参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@lowztokl
此快照首次捕获于
2023/11/13 22:21
2 年前
此快照最后确认于
2023/11/14 10:51
2 年前
查看原帖
P2712 70pts
CPP
#include <bits/stdc++.h>
using namespace std;
int n,ans;
int in[1010];
vector<int>e[1010];
queue<int>q;
bool box[1010];
int main(){
	cin >> n;
	ans=n;
	for(int i=1;i<=n;i++){
		int x,m;
		cin >> x >> m;
		while(m--){
		    int v;
		    cin >> v;
		    e[x].push_back(v);
		    in[v]++;
		    box[x]=1;
		}
	}
	for(int i=1;i<=n;i++){
		if(in[i]==0){
			q.push(i);
		}
	}
	while(q.size()){
		int t=q.front();
		ans--;
		q.pop();
		//cout << "camera " << t << " has broken" << endl;
        //cout << "last " << ans << " cameras" << endl;
		for(auto v:e[t]){
			in[v]--;
			//cout << "camera " << v << " last " << in[v] << " lives" << endl;
			if(in[v]==0&&box[v]){
			    q.push(v);
			}
		}
	}
	if(ans)cout << ans;
	else cout << "YES";
	return 0;
}
很明显发在题目专版的话被看到的几率不大

回复

1 条回复,欢迎继续交流。

正在加载回复...