当前位置: 首页 > news >正文

图论 | 98. 所有可达路径

98. 所有可达路径

题目链接: 98. 所有可达路径

思路

  1. 先创建邻接矩阵,再深搜
  2. 写代码是需要注意的是acm格式,输入的格式要转化为int,输出要转化为str,用map()实现。

dfs

def dfs(grid,node,n,path,res):
    if node == n:
        res.append(path[:])
        return
    for j in range(len(grid[0])):
        if grid[node-1][j] == 1:
            path.append(j+1)
            dfs(grid,j+1,n,path,res)
            path.pop()

def main():
    # 构造邻接矩阵
    n,m = map(int,input().split())
    grid = [[0]*n for _ in range(n)]
    for _ in range(m):
        node1,node2 = map(int,input().split())
        grid[node1-1][node2-1] = 1

    res = []
    dfs(grid,1,n,[1],res)
    if not res:
        print(-1)
    else:
        for path in res:
            print(' '.join(map(str,path)))
    

if __name__ == "__main__":
    main()  
http://www.dtcms.com/a/85799.html

相关文章:

  • 机器学习、深度学习解决方案设计方案通用审核流程(solution architect review)
  • 从扩展黎曼泽塔函数构造物质和时空的结构-5
  • 【页面组件】——1
  • 使用DeepSeek进行审稿和反馈审稿意见相关流程和提示词分享
  • 【算法】常见排序算法(插入排序、选择排序、交换排序和归并排序)
  • LLM之RAG理论(十四)| RAG 最佳实践
  • Pi型隶属函数(Π-shaped Membership Function)的详细介绍及python示例
  • 2025年3月 CCF GESP C++ 二级 真题解析
  • 仅靠prompt,Agent难以自救
  • DeepSeek,PowerBI一般有哪些问题?
  • 操作系统导论——第13章 抽象:地址空间
  • 【笔记分享】NCS/Zephyr USB MSC实现方法介绍
  • 每日一题第15届蓝桥杯c/c++本科B组省赛第3题
  • 【笔记分享】nRF54H20 SPI速率范围记录
  • 【数理基础】【高等代数】高等代数本科课程总结、资料汇总、个人理解
  • Quartz.NET 核心功能与应用解析
  • Java中synchronized 和 Lock
  • 数据可视化在商业智能中的应用:从数据到洞察的桥梁
  • LINUX基础IO [六] - 文件理解与操作
  • Centos7搭建Zabbix4.x监控HCL模拟网络设备:zabbix-server搭建及监控基础04
  • 23种设计模式-原型(Prototype)设计模式
  • (UI自动化测试)(UI自动化测试)第二篇:元素定位的方法_xpath路径定位
  • Java 大视界 -- Java 大数据在智慧文旅旅游目的地营销与品牌传播中的应用(150)
  • 字符串及其函数
  • 第五章.java接口
  • 生成连笔字或其他字体的网站——非常实用
  • Web开发-JS应用NodeJS原型链污染文件系统Express模块数据库通讯
  • Python解决“DNA序列编辑距离”问题
  • BUAA XCPC 2025 Spring Training 2
  • C++入门基础知识110—【关于C++嵌套 if 语句】