青岛oj集训6

1.P1629 邮递员送信 - 洛谷

2.P1938 [USACO09NOV] Job Hunt S - 洛谷

跑最长路,判正环,跑SPFA

  知识点:P3385 【模板】负环 - 洛谷

3.P3956 [NOIP 2017 普及组] 棋盘 - 洛谷

把每一个格子都当做一个点,相邻格子连边

把每一个无色点拆分成浅红点和浅黄点,以后再去连边就行

注意:无色点不能连无色点

4.P4017 最大食物链计数 - 洛谷

给定一张有向无环图,找最长链,跑拓扑

5.P1960 郁闷的记者 - 洛谷

排名就是拓扑序

f[i]:i的层数,满足f[v]=max(f[u1]+1,f[u2]+1,…f[u(r[i])]+1)

性质:层数相同的节点在拓扑序中可以随意交换,且层数大的一定在层数小的后面

如果存在一层中有多个节点,那么这几个节点一定互相交换位置后是全新的一个拓扑序

所以若存在f[i]=f[j],则有其他拓扑序,否则没有

更好的办法:如果有一个点的层数为n-1,那么拓扑序一定是唯一的

6.P2419 [USACO08JAN] Cow Contest S - 洛谷

法1:传递闭包

跑Floyd,传递闭包,如果所有点与这个点的关系是确定的,有关系,那么ans计数

法2:DAG的层数(时间复杂度优势,但要特判联通)

如果某一个层里只有一个点,那么这个点的排名是确定的,但前提是这张DAG是弱联通图(所有的边看成无向边)

如果这张图是弱连通图,那么根据层数判断,否则所有点都无法判断

但是有特判:1指2、3,3指4,则2、4之间排名无法确定,要考虑link【i】【j】(我也不知道是啥啊)

7.P6154 游走 - 洛谷

+1的原因:只有v这一个点的路径(起点终点可以相同)

posted @ 2025-04-08 21:11  永韶  阅读(15)  评论(0)    收藏  举报