关注
#include <iostream>
#include <vector>
#include <set>
using namespace std;
int main() {
int n, t, x;
cin >> n;
set<int> monsters;
vector<int> types(n);
vector<int> nodes(n);
for (int i = 0; i < n; ++i) {
cin >> types[i] >> nodes[i];
nodes[i] -= 1;
}
int last = 0;
// 1 说 2 是宝箱 2说3是宝箱, 3说1是宝箱怪,这样的矛盾判断1是宝箱怪
for (int i = 0; i < n; ++i) {
int count = 0;
int k = i;
while (types[k] == 1) {
k = nodes[k];
if (++count >= n) break; // 处理 环
}
if (types[k] == 2 && nodes[k] == i)
monsters.insert(i);
}
// 指向宝箱怪 是 宝箱的 都是 宝箱怪
while (last != monsters.size()) {
last = monsters.size();
for (int i = 0; i < n; ++i) {
if (types[i] == 1 && monsters.find(nodes[i]) != monsters.end()) {
monsters.insert(i);
}
}
}
cout << 0 << " " << monsters.size() << endl;
return 0;
}
查看原帖
点赞 8
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 中美关税战对我们有哪些影响 #
4378次浏览 74人参与
# 校招求职有谈薪空间吗 #
118236次浏览 1584人参与
# 牛友故事会 #
518231次浏览 11761人参与
# 多益网络求职进展汇总 #
8223次浏览 53人参与
# 如果没找到工作,考公是你的退路吗 #
17667次浏览 200人参与
# 关于春招你都做了哪些准备? #
79924次浏览 529人参与
# 找工作有哪些冷知识 #
21814次浏览 250人参与
# 美的集团工作体验 #
18203次浏览 56人参与
# 你上一次加班是什么时候? #
43711次浏览 311人参与
# 你最希望上岸的公司是? #
113869次浏览 629人参与
# 我的2024小目标 #
54368次浏览 371人参与
# 机械人的offer怎么选 #
128251次浏览 736人参与
# 谈薪时HR压价该怎么应对 #
190436次浏览 3075人参与
# 小米提前批笔试难吗 #
30848次浏览 347人参与
# 实习中的菜狗时刻 #
327595次浏览 3098人参与
# CVTE工作体验 #
8906次浏览 21人参与
# 担心入职之后被发现很菜怎么办 #
112328次浏览 699人参与
# 新凯来求职进展汇总 #
16099次浏览 68人参与
# 找工作如何保持松弛感? #
2623次浏览 50人参与
# 蔚来求职进展汇总 #
85247次浏览 746人参与