P2341 [HAOI2006]受欢迎的牛

塔尔羊标准模板(我才不会告诉你我嘴里含着一个九省联考的出题人)

不会劈配、林克卡特树、制胡窜

我还会叉粪宿主,梳妆素组,西安段素

#include<cstdio>
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
vector<int>line[50000];
int dfn[10100],low[10100],tim;
bool instack[10100];
int stack[101000],top;
int belong[10100],cnt;
int num[10100];
int cot[10100];
void tarjan(int now)
{
dfn[now]=low[now]=++tim;
stack[++top]=now;
instack[now]=true;
for(int i=0;i<line[now].size();i++)
{
int nxt=line[now][i];
if(!dfn[nxt])
{
tarjan(nxt);
low[now]=min(low[nxt],low[now]);
}
else
if(instack[nxt]&&dfn[nxt]<low[now])
low[now]=dfn[nxt];
}
if(low[now]==dfn[now])
{
int pas;
cnt+=1;
do
{
pas=stack[top--];
instack[pas]=false;
belong[pas]=cnt;
num[cnt]+=1;
}while(pas!=now);
}
return ;
}
int main()
{
int n,m;
scanf("%d%d",&n,&m);
int a,b;
for(int i=1;i<=m;i++)
{
scanf("%d%d",&a,&b);
line[a].push_back(b);
}
for(int i=1;i<=n;i++)
if(!dfn[i])
tarjan(i);
for(int i=1;i<=n;i++)
for(int j=0;j<line[i].size();j++)
if(belong[i]!=belong[line[i][j]])
cot[belong[i]]=1;
int ans=0;
int pas;
for(int i=1;i<=cnt;i++)
if(!cot[i])
ans+=1,pas=i;
if(ans==1)
printf("%d",num[pas]);
else
printf("0");
return 0;
}

日常赛高

最新文章

  1. C# 记录错误日志
  2. css知多少(9)——float下篇
  3. General protection fault Exceptions in Linux/IA32 Systems
  4. asp.net实现通用水晶报表
  5. Spark学习笔记--Transformation 和 action
  6. DotNetBar v11.4.0.6 Fully Cracked
  7. nefu 197 关键字检索(kmp算法)
  8. 学习总结------用JDBC连接MySQL
  9. 解决jenkins下使用HTML Publisher插件后查看html报告显示不正常 以jmeter报告为例
  10. 2017CCPC 网络选拔赛1003 Ramsey定理
  11. 【C++】C++未定义行为
  12. Python开发【笔记】:aiohttp搭建简易聊天室
  13. idea 与springboot 快捷键
  14. mysql dbcp Caused By: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received
  15. Python2.7-fileinput
  16. Add Again UVA - 11076(排列之和)
  17. php获取网址
  18. maven 插件在线安装
  19. Centos7 配置ssh 免秘钥登陆
  20. 2018.09.11 poj2976Dropping tests(01分数规划)

热门文章

  1. oracle 用mybatis生成主键
  2. python_字典 学习
  3. 效率工具(fswatch,rsync)
  4. suffix ACM-ICPC 2017 Asia Qingdao
  5. Zookeeper配置Kafka
  6. 使用InstallShield打包VS程序
  7. 7.vs的基本设置
  8. JavaScript 中 call,apply 和 bind
  9. 一步步理解typedef
  10. 基于Python的开源人脸识别库:离线识别率高达99.38%