链接:https://ac.nowcoder.com/acm/contest/330/F

来源:牛客网

时间限制:C/C++ 2秒,其他语言4秒

空间限制:C/C++ 262144K,其他语言524288K

64bit IO Format: %lld

题目描述

Applese 有一个QQ群。在这个群中,大家互相请教问题。如 b 向 a 请教过问题,就把 a 叫做是 b 的"老板"。这样一个群中就会有很多老板。

同时规定:如果 a 是 b 的老板,b 是 c 的老板,那么 a 也是 c 的老板。

为了不破坏群里面和谐交流的氛围,Applese 定了一个群规:不允许出现 a 既是 b 的老板, b 又是 a 的老板。

你需要帮助 Applese 判断大家是否遵守了群规。

输入描述:

第一行两个整数 n, m,表示群里的人数以及请教问题的数量。
接下来 m 行,每行两个整数 a, b,表示 a 是 b 的"老板",即 b 向 a 请教了一个问题。
注:无论是否违反了群规,a 都会成为 b 的老板。

输出描述:

对于每次提问,输出一行"Yes"表示大家都遵守了群规,反之输出"No"。

示例1

输入

复制

4 4
1 2
2 3
3 1
1 4

输出

复制

Yes
Yes
No
No

备注:

1≤n≤10^5,1≤n≤10^5
1≤m≤2⋅10^5,1≤m≤2⋅10^5
1≤a,b≤n

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
#include<set>
using namespace std;
typedef long long ll;
int n,m;
struct edge{
int x;
int y;
int nex;
}e[200005];
int cnt,head[100005],fr[200005],to[200005],in[100005],que[100005],vis[100005],tim,f[100005];
void adde(int xx,int yy){
e[cnt].x=xx;
e[cnt].y=yy;
e[cnt].nex=head[xx];
in[yy]++;
head[xx]=cnt++;
}
bool dfs(int x){
if(vis[x]==tim)return true;
if(f[x])return false;
f[x]=1;
vis[x]=tim;
for(int i=head[x];i!=-1;i=e[i].nex){
int v=e[i].y;
//vis[]
if(dfs(v))
return true; }
vis[x]=0;
return false;
} bool check(int x){
cnt=0;
tim=0;
// cout<<x<<"#####";
memset(head,-1,sizeof(head));
memset(vis,0,sizeof(vis));
memset(f,0,sizeof(f));
//memset(in,0,sizeof(in));
for(int i=1;i<=x;i++){
adde(fr[i],to[i]); }
for(int i=1;i<=n;i++){
tim++;
if(!f[i]&&dfs(i)){
return false;
} }return true;
//return topo();
} int main()
{
cin >> n >> m;
for(int i=1;i<=m;i++){
scanf("%d%d",&fr[i],&to[i]);
}
int l=1;
int r=m;
int ans=0;
while(l<=r){
int mid=(l+r)/2;
if(check(mid)){
ans=mid;
l=mid+1;
}
else{
r=mid-1;
}
}
for(int i=1;i<=m;i++){
if(i<=ans){
printf("Yes\n");
}
else{
printf("No\n");
}
}
return 0;
}

Applese 的QQ群(二分+dfs)的更多相关文章

  1. Applese的QQ群-(拓扑+二分)

    链接:https://ac.nowcoder.com/acm/contest/330/F来源:牛客网 题目描述 Applese 有一个QQ群.在这个群中,大家互相请教问题.如 b 向 a 请教过问题, ...

  2. 牛客寒假算法基础集训营4 F Applese 的QQ群

    链接:https://ac.nowcoder.com/acm/contest/330/F来源:牛客网 Applese 有一个QQ群.在这个群中,大家互相请教问题.如 b 向 a 请教过问题,就把 a ...

  3. 我们是怎么管理QQ群的

    文章背景:腾讯平台上的qq群数以千万百万计,但99%的在吹水扯蛋,从早上的问好开始,到晚上的晚安,无一不浪费青春之时间,看之痛心,无力改变,只好自己建了一个,希望能以此来改变群内交流的氛围或环境. 以 ...

  4. 新开了一个ABP交流的QQ群(579765441 ),欢迎加入

    因为ABP架构设计交流群人数一直爆满,很多想交流ABP的朋友无法加进群里, 刚新建了一个QQ群,群号579765441 (ABP架构设计交流群2),欢迎对ABP感兴趣的朋友加入. 欢迎加QQ群: AB ...

  5. 一行实现QQ群组头像,微信群组,圆角等效果. 并支持url直接加载图片

    说点题外话. Coding中我们总是经历着这么几个过程. 学会使用: 不管是API也好, 开源库也好. 总是在最开始的学会去用. 了解实现原理: 可能会因为一些不兼容, 代码的异常状态的处理不够完美等 ...

  6. 山东省滕州市木石镇化石沟村QQ群116528924

    山东省滕州市木石镇化石沟村QQ群116528924

  7. Codeforces Round #381 (Div. 2)D. Alyona and a tree(树+二分+dfs)

    D. Alyona and a tree Problem Description: Alyona has a tree with n vertices. The root of the tree is ...

  8. C# 软件绑定QQ群类开源放出

    周天闲来无事写个公共类,可以添加到你们自己项目中限制必须加入你QQ群才可以使用. 代码简单,高手勿喷,有哪里不合理的请回帖让大家学习学习. using System; using System.Tex ...

  9. Android QQ群:343816731 欢迎大家加入探讨

    Android QQ群:343816731 欢迎大家加入探讨.

随机推荐

  1. ubuntu18.04 按住只能删除一个字符bug

    只需要打开重复按键就可以了

  2. 关于windows的锁定状态

    本来以为要在项目里用上的,现在看来不需要了,把相关的函数列一下吧,以后如果用到了,再写详细点 锁定计算机 : LockWorkStation 注册Windows状态变化的监听函数: BOOL WTSR ...

  3. easyUI Methods

    doc对象转jQuery 对象 $(doc Object); jQuery Object.控件名('方法'[,参数]); options 为该控件的属性 方式一: var opts = $('.eas ...

  4. POJ2442 Sequence(堆的骚操作)

    Description Given m sequences, each contains n non-negative integer. Now we may select one number fr ...

  5. mobiscroll_2.15.1

    var opt_sex = { theme: 'ios', lang: 'zh', formatValue: function (d) { return d.join(','); }, customW ...

  6. Backup--查看备份的历史记录

    --==================================================== --查看数据库备份的详细信息:时间存储地址最大/最小LSN SELECT * FROM m ...

  7. Ubuntu16.04修改静态ip地址

    https://blog.csdn.net/mdw5521/article/details/79270035

  8. 动态往 datagridview 追加行、列操作

    DataGridViewTextBoxColumn acCode = new DataGridViewTextBoxColumn(); acCode.Name = "acCode" ...

  9. webform Response的一些成员

    1. Response.BufferOutPut,关闭缓冲区. 2. Response.Flush,一次性把缓冲区的内容释放出来. 3. Response.Clear,清空缓冲区. 4. Respon ...

  10. Mongo Windows 基本使用入门

    1.安装https://www.mongodb.com/download-center#community注意:安装 "install mongoDB compass" 不勾选下载 ...