社区讨论
哥 救救我 20分 其他错了
P5318【深基18.例3】查找文献参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mhjkupa7
- 此快照首次捕获于
- 2025/11/04 04:13 4 个月前
- 此快照最后确认于
- 2025/11/04 04:13 4 个月前
CPP
#include<bits/stdc++.h>
using namespace std;
int n,m,x,y,f;
vector<int>a[1000005];
queue<int>q;
bool b[1000005];
void dfs(int s)
{
if(!a[s].empty())
{
sort(a[s].begin(),a[s].end());
for(int i=0;i<a[s].size();i++)
{
if(!b[a[s][i]])
{
b[a[s][i]]=1;
cout<<a[s][i]<<" ";
dfs(a[s][i]);
}
}
}
}
int main()
{
cin>>n>>m;
for(int i=1;i<=m;i++)
{
cin>>x>>y;
a[x].push_back(y);
}
cout<<1<<" ";
for(int i=0;i<a[1].size();i++)
{
sort(a[1].begin(),a[1].end());
if(!b[a[1][i]])
{
b[a[1][i]]=1;
cout<<a[1][i]<<" ";
dfs(a[1][i]);
}
}
cout<<endl;
memset(b,0,sizeof(b));
q.push(1);
while(!q.empty())
{
f=q.front();
q.pop();
cout<<f<<" ";
if(!a[f].empty())
{
for(int i=0;i<a[f].size();i++)
{
if(!b[a[f][i]])
{
b[a[f][i]]=1;
q.push(a[f][i]);
}
}
}
}
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...