904. 虫洞_虫洞引擎

904. 虫洞_虫洞引擎Acwing904.虫洞

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Powered by:NEFU AB-IN

Link

904. 虫洞

  • 题意

    见原题

  • 思路

    看是否有负环即可

    • 别忘把所有点都入队
  • 代码

    ''' Author: NEFU AB-IN Date: 2022-04-16 16:17:22 FilePath: \ACM\Acwing\904.py LastEditTime: 2022-04-16 16:17:23 '''
    from collections import deque
    
    N = 550
    INF = int(1e9)
    g = [[] for _ in range(N)]
    dist, st, cnt = [INF] * N, [0] * N, [0] * N
    
    
    def spfa():
        q = deque()
        for i in range(1, n + 1):
            q.appendleft(i)
            st[i] = 1
            dist[i] = 0
        while q:
            u = q.pop()
            st[u] = 0
    
            for v, w in g[u]:
                if dist[v] > dist[u] + w:
                    dist[v] = dist[u] + w
                    if st[v] == 0:
                        st[v] = 1
                        q.appendleft(v)
                    cnt[v] = cnt[u] + 1
                    if cnt[v] >= n:
                        return 1
        return 0
    
    
    for _ in range(int(input())):
        g = [[] for _ in range(N)]
        dist, st, cnt = [INF] * N, [0] * N, [0] * N
    
        n, m, w = map(int, input().split())
        for i in range(m):
            u, v, t = map(int, input().split())
            g[u].append([v, t])
            g[v].append([u, t])
        for i in range(w):
            u, v, t = map(int, input().split())
            g[u].append([v, -t])
        if spfa():
            print("YES")
        else:
            print("NO")
    
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193704.html原文链接:https://javaforall.net

(0)
上一篇 2025年11月20日 上午11:15
下一篇 2025年11月20日 上午11:43


相关推荐

  • J2ME中的Hashtable和Vector

    J2ME中的Hashtable和Vector

    2021年8月9日
    55
  • AV1 码流分析器的搭建

    AV1 码流分析器的搭建作为HEVC比较热门的继承者,AOM推进的AV1在2018年进入了大家的视野。研究AV1的新编码工具离不开一个强大的码流分析工具。AOM得益于开源社区的贡献,其码流分析工具也在同步的推出,给研究AV1新编码工具的小伙伴带来省去不少麻烦。本文主要简单介绍一下如何搭建一个本地的AV1码流分析工具以及在大家过程中遇到的问题。1.AV1码流分析工具简单介绍AV1码流分析工…

    2026年2月14日
    5
  • 解析flex属性:flex:1究竟是什么

    解析flex属性:flex:1究竟是什么成功搞懂了 flex 1 呢

    2026年3月18日
    2
  • BulletedList用途

    BulletedList用途1.用作最普通的信息显示(列表方式)2.制作导航条BulletedList3中模式1.Text文本2.HyperLink连接2.LinkButton按钮BulletedList&#1

    2022年7月3日
    28
  • plsqldev解决中文乱码问题

    plsqldev解决中文乱码问题自己在安装完 plsqldev 之后 发现从数据库中查到的中文乱码 因此 尝试了一些解决方法 下面的这个方法还是比较有效的 1 查看下环境变量的设置 查看是否有变量 NLS LANG 没有则新建该变量 2 新建变量 设置变量名 NLS LANG 变量值 SIMPLIFIEDCH CHINA ZHS16GBK 确定即可 3 退出 plsql 重新登陆 plsql

    2026年3月17日
    2
  • mysql 字符串类型 分区_MySQL分区类型

    mysql 字符串类型 分区_MySQL分区类型博文大纲:1、RANGE分区2、LIST分区3、HASH分区4、key分区5、MySQL分表和分区的区别6、附加:如何实现将分区放在不同的目录下进行存储MySQL分区类型如下:RANFGE分区LIST分区HASH分区key分区上面的四种分区的条件必须是整形,如果不是整形需要通过函数将其转换为整形。1、RANGE分区RANGE分区是基于属于一个给定连续区间的列值,把多行分配给分区。这些区间要连续且不…

    2022年6月8日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号