1 条题解

  • 0
    @ 2026-8-10 15:27:32

    CJDF01|道路是否可达 题解

    核心算法

    ss 开始进行深度优先搜索,用 visited 记录已经到达的地点。

    思路推导

    从当前地点 uu 枚举所有 au,v=1a_{u,v}=1 的地点 vv。若 vv 尚未访问,就继续从 vv 搜索。到达 tt 时即可确认答案。

    正确性说明

    DFS 会沿每条从 ss 出发且尚未访问的道路继续搜索,因此所有从 ss 可达的地点最终都会被访问;不可达地点不会被错误访问。故 visited[t] 与“ss 能到达 tt”等价。

    复杂度

    时间复杂度 O(n2)O(n^2),空间复杂度 O(n)O(n)(不计输入矩阵)。

    易错点

    • 道路有方向,不能自动把 ai,ja_{i,j} 当作 aj,ia_{j,i}
    • 进入结点后立刻标记,避免环导致无限递归;
    • s=ts=t 时答案应为 YES
    • 1

    信息

    ID
    CJDF01
    时间
    2000ms
    内存
    256MiB
    标签
    递交数
    15
    已通过
    4
    上传者