@[2019lzh](/user/414220)
>请求出这个图点数**大于** $1$ 的强联通分量个数。
by 5k_sync_closer @ 2023-01-29 21:13:31
@[5k_sync_closer](/user/388651) 但是我把 if(jishu>=1) sum++;改成 if(jishu>1) sum++还是不行
by 2019lzh @ 2023-01-29 22:33:29
@[2019lzh](/user/414220)
1. `for(int i=1;i<m;i++)`
2.
```cpp
else if (instack[i]==1);
vis[x]=min(vis[x],vis[i]);
```
自己找问题
by 5k_sync_closer @ 2023-01-30 06:45:55
@[5k_sync_closer](/user/388651)
```
for(int i=1;i<=m;i++)
```
```
else if (instack[i]==1);
vis[x]=min(vis[x],dfn[i]);
```
辛苦了,是这样改吗,为什么还是不行QAQ
by 2019lzh @ 2023-01-31 21:10:13
@[2019lzh](/user/414220) 分号。
by 5k_sync_closer @ 2023-01-31 21:12:19
@[5k_sync_closer](/user/388651)
##### 哦哦没注意到
##### 现在84分 剩下两个测试点
##### 实在找不到错误了555555
##### #2 #10
测试点2数据
```
9 20
1 6
9 6
3 4
4 3
5 6
6 7
7 8
5 1
9 5
8 7
5 9
9 8
9 1
8 1
1 5
6 1
8 5
1 9
7 5
7 6
```
out
```
2
```
实际输出
```
0
```
代码
```
#include<bits/stdc++.h>
using namespace std;
int n,m,xx,yy,sum,num=0,jishu=1;
stack <int> qq;
bool visit[10001];
bool instack[10001];
int dfn[10001],vis[10001];
bool a[10001][10001];
void tarjan(int x)
{
//cout<<"tarjan "<<x<<endl<<endl;
num++;
vis[x]=dfn[x]=num;
qq.push(x);
//cout<<"qq.top "<<qq.top()<<endl;
instack[x]=1;
for(int i=1;i<=m;i++)
{
if(a[x][i]==1)
{
if(visit[i]!=1)
{
visit[i]=1;
tarjan(i);
vis[x]=min(vis[x],vis[i]);
// cout<<"vis[x]=min(vis[x],vis[i])1 "<<x<<i<<"vis[]"<<x<<" "<<vis[x]<<endl;//测试
}
else if (instack[i]==1)
vis[x]=min(vis[x],dfn[i]);
// cout<<"vis[x]=min(vis[x],vis[i])2 "<<x<<i<<"vis[]"<<x<<" "<<vis[x]<<endl;//测试
}
}
if(dfn[x]==vis[x]) //没用,执行出栈操作
{
int jishu=0;
//cout<<qq.top()<<"第31行pop1"<<endl;//测试
while(qq.top()!=x)
{
jishu++;
// cout<<jishu<<" "<<qq.top()<<"第36行pop2"<<endl;//测试
instack[qq.top()]=0;
qq.pop();
}
instack[qq.top()]=0;
qq.pop();
if(jishu>1) sum++;
}
return ;
}
int main(){
cin>>m>>n;
for(int i=1;i<=n;i++)
{
cin>>xx>>yy;
a[xx][yy]=1;//存图
}
for(int i=1;i<=m;i++)
{
if(visit[i]==0)
{
// cout<<i;//test
visit[i]=1;
// cout<<"第61行tarjan"<<i<<endl;//测试
tarjan(i);
}
}
// cout<<"输出正常";
cout<<sum;
return 0;
}
```
by 2019lzh @ 2023-02-01 08:36:38
@[2019lzh](/user/414220) `int jishu=0;`0 改成 1
by 5k_sync_closer @ 2023-02-01 14:49:38
@[5k_sync_closer](/user/388651) AC了谢谢 蒟蒻很多细节还是注意不到
by 2019lzh @ 2023-02-03 09:29:44