📄 1690.cpp
字号:
#include <cstdio>
#include <memory>
#define max 10001
int f[max],m,n,tot,rest,sign[max],sum;
void scan()
{
int x,y;
memset(f,0,sizeof(f));
memset(sign,0,sizeof(sign));
while (m--)
{
scanf("%d%d",&x,&y);
f[x]=y;sign[x]=1;
}
}
void go(int t)
{
int temp;
while (f[t]!=0)
{
temp=t;
t=f[t];
f[temp]=0;sign[temp]=0;
rest--;
}
}
int main()
{
int i;
scanf("%d",&tot);
for (i=1;i<=tot;i++)
{
scanf("%d%d",&n,&m);
scan();rest=m;sum=0;
while (rest!=0)
{
for (i=1;i<=max;i++)
{
if (sign[i]==1) go(i);
sum++;
}
}
printf("%d\n",sum);
}
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -