最短路学习笔记

同余最短路

P3403 跳楼机

题意:

你可以采用以下四种方式移动:

  1. 向上移动 \(x\) 层;
  2. 向上移动 \(y\) 层;
  3. 向上移动 \(z\) 层;
  4. 回到第一层。

现在你在第一层,求你可以去到的楼层数

solution

发现 \(h\) 很大,且推不出时间复杂度可以过关的式子,所以数论卒。

发现每一次执行操作时,都可以到达当前点 + \(x\)\(y\)\(z\)

于是可以用最短路搞,但是 \(h\) 太大最短路跑不动也存不下。

考虑一种神奇的取模运算。

发现只需要把 \(\mod x\) 的值存下来,统计答案时在统计 \(\mod x\) 同余的楼层一起计算。

posted @ 2025-10-26 20:04  FurinaQWQ  阅读(0)  评论(0)    收藏  举报