题意:给你一个网格图,再给你n个点,每个点有一个传送门,可以传送到别的点,传送门有三种,横向,纵向,九宫格,你一开始可以任选一个点为起点,问你最多能经过多少个点。
题解:
tarjan+拓扑排序+dag上的dp
首先这题数据比较水,行和列都是\(10^5\)级别的
将能互相到达的点连边,tarjan缩点后变成dag
考虑在dag上dp,但是要满足拓扑序,所以对缩点后的图进行拓扑排序
然后直接简单dp即可
#include #include #include #include #include #include #include #include