关注
void getGuanzhuCore(map<int, vector<int>> & guanzhu, map<int, set<int>> & beiguanzhu, vector<int> & lujing, int user)
{
for (int i = 0; i < guanzhu[user].size(); ++i)
{
for (int j = 0; j < lujing.size(); ++j)
{
beiguanzhu[guanzhu[user][i]].insert(lujing[j]);
}
//没有在路径中的元素,继续查找
if (find(lujing.begin(), lujing.end(), guanzhu[user][i]) == lujing.end())
{
lujing.push_back(guanzhu[user][i]);
getGuanzhuCore(guanzhu, beiguanzhu, lujing, guanzhu[user][i]);
lujing.pop_back();
}
}
}
void getAllGuanzhu(map<int, vector<int>> & guanzhu, map<int, set<int>> & beiguanzhu)
{
vector<int> guanzhulujing;
for (auto it = guanzhu.begin(); it != guanzhu.end(); ++it)
{
guanzhulujing.clear();
guanzhulujing.push_back(it->first);
getGuanzhuCore(guanzhu, beiguanzhu, guanzhulujing, it->first);
}
}
int main()
{
int n = 0, m = 0;
while (cin >> n >> m)
{
map<int, vector<int>> guanzhu;
map<int, set<int>> beiguanzhu;
for (int i = 0; i < m; ++i)
{
int u1 = 0, u2 = 0;
cin >> u1 >> u2;
guanzhu[u1].push_back(u2);
}
getAllGuanzhu(guanzhu, beiguanzhu);
int cnt = 0;
for (auto it = beiguanzhu.begin(); it != beiguanzhu.end(); ++it)
{
it->second.erase(it->first);//先删掉自己的关注
if (it->second.size() >= n - 1)
cnt++;
}
cout << cnt << endl;
}
return 0;
}
查看原帖
点赞 评论
相关推荐
李橙子:你这如果想找java方向的,那你的项目就不要写python啊,不然会以为你是主要找python的 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
12698次浏览 173人参与
# 你的mentor是什么样的人? #
51246次浏览 724人参与
# 程序员找工作至少要刷多少题? #
21592次浏览 278人参与
# 我和mentor的爱恨情仇 #
106351次浏览 951人参与
# 论秋招对个人心气的改变 #
13835次浏览 193人参与
# 机械人避雷的岗位/公司 #
44277次浏览 311人参与
# 为了减少AI幻觉,你注入过哪些设定? #
6301次浏览 185人参与
# 秋招落幕,你是He or Be #
54316次浏览 618人参与
# 校招第一份工作你干了多久? #
136714次浏览 597人参与
# 高薪高压 vs 低薪wlb,你怎么选? #
47455次浏览 291人参与
# 设计人如何选offer #
189769次浏览 868人参与
# 考公VS就业,你怎么选? #
92022次浏览 507人参与
# 职场上哪些行为很加分? #
322678次浏览 3604人参与
# 你的秋招进行到哪一步了 #
2531458次浏览 23253人参与
# 牛客AI体验站 #
8000次浏览 213人参与
# 机械人还在等华为开奖吗? #
312239次浏览 1582人参与
# 秋招投递记录 #
381032次浏览 3204人参与
# 12306一秒售罄,你抢到回家的票了吗? #
2364次浏览 52人参与
# 我现在比当时_,你想录用我吗 #
9600次浏览 131人参与
# 重来一次,我还会选择这个专业吗 #
411409次浏览 3898人参与