求助,全wa
查看原帖
求助,全wa
342090
Lips楼主2020/5/5 09:52

一片红。。。。

#include<cstdio>
#include<vector>
#include<cstring>
#include<queue>
using namespace std;
const int MAXN=100010;
int n,m;
bool vis[MAXN];
vector<int>G[MAXN];
void dfs(int u)
{
	printf("%d ",u);
	vis[u]=1;
	for(register int i=0;i<G[u].size();i++)
	{
		int v=G[u][i];
		if(!vis[v]) dfs(v);
	}
}
void bfs()
{
	queue<int>q;
	memset(vis,0,sizeof(vis));
	vis[1]=1;
	q.push(1);
	printf("1 ");
	while(!q.empty())
	{
		int u=q.front();
		q.pop();
		for(register int i=0;i<G[u].size();i++)
		{
			int v=G[u][i];
			if(!vis[v])
			{
				vis[v]=1;
				q.push(v);
				printf("%d ",v);
			}
		}
	}
}
int main()
{
	scanf("%d%d",&n,&m);
	while(m--)
	{
		int u,v;
		scanf("%d%d",&u,&v);
		G[u].push_back(v);
	}
	dfs(1);
	printf("\n");
	bfs();
}
2020/5/5 09:52
加载中...