日记

日记

Tue Jul 08 2025
2 分钟

烷氮了。

T1 Link to T1

唐诗小 dp。

T2 Link to T2

傻逼出题人能不能把题意冯福的写清楚先?

我们把每个点分成 44 个点,分别表示将要往上,下,左,右走四种情况,枚举一个点 (i,j)(i,j) 和方向 pp 和下一个点 (x,y)(x,y),如果 (x,y)(x,y) 合法(就是没出界且不是墙)就 id[toint(i,j)][p] = ++idx

之后再次枚举,只不过这次只枚举 id[toint(i,j)][p] != 0 的。我们可以知道 (x,y)(x,y) 的下一个方向是啥,于是我们就建边,建出来一定是一个所有点都在上面的一个大环。直接 O(1)O(1) 查询就是了。

T3 Link to T3

我也是纯唐。

首先把无解判掉,然后对于 (i,j)(i,j)(x,y)(x,y),如果 mpi,jmpx,ymp_{i,j} \mid mp_{x,y} 就建一条 (i,j)(x,y)(i,j) \to (x,y) 的边,边权为 mpx,ympi,j\frac{mp_{x,y}}{mp_{i,j}}。由于边权最多只有 4×1044 \times 10^4 种,于是我们枚举每种边权 ww,然后把边权为 ww 的边形成的子图给弄出来,跑一遍拓扑排序求最长路就是了。复杂度 O(n)O(n),记得用 unordered_set 记录每个出现在子图里的点,不然就是 O(nV)O(nV) 的复杂度了。

T4 Link to T4

改不来。

后日谈 Link to 后日谈

今天的傻逼模拟赛已经吐槽过了。

晚上尝试驯服 决策单调性 优化 dp,然后被反噬了。
又尝试驯服 后缀数组 + 后缀自动机,然后又被反噬了。

我咋啥都看不懂了。