社区讨论

求调,TIM了

P3916图的遍历参与者 8已保存回复 10

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
10 条
当前快照
1 份
快照标识符
@mkb94402
此快照首次捕获于
2026/01/12 22:21
上个月
此快照最后确认于
2026/01/16 21:15
上个月
查看原帖
CPP
#include <iostream>
#include <vector>
#include <algorithm>
#include <queue>
using namespace std;
int n,m;
int u,v;
vector< vector<int> > g;
vector<bool> vis;
int k = -1;
void bfs(int x)
{
    vis[x] = false;
    queue<int> q;
    q.push(x);
    while (!q.empty())
    {
        int y = q.front();
        q.pop();
        k = max(k,y);
        for (int i : g[y])
        {
            if (!vis[i])
                continue;
            vis[i] = false;
            q.push(i);
        }
    }
}
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    cin >> n >> m;
    g.resize(n + 3);
    vis.resize(n + 3,true);
    for (int i = 1;i <= m;i++)
    {
        cin >> u >> v;
        g[u].push_back(v);
    }
    for (int i = 1;i <= n;i++)
    {
        fill(vis.begin(),vis.end(),true);
        k = -1;
        bfs(i);
        cout << k << ' ';
    }
    return 0;
}

被TIM了,求调

回复

10 条回复,欢迎继续交流。

正在加载回复...