20230715

发布时间 2023-07-27 15:01:49作者: 星河倒注

T3 Interstellar Hunter

可以证明任意时刻,能到达的点集可使用两个基向量表示。把基向量表示为标准形式:其中一个向 量 \((d, 0)(d \geq 0)\) ,另一个向量 \((x, y)(x<d, y \geq 0)\) 。能快速合并向量。
设加入的向量为 \((a, b)\) ,显然可以用 \((a, b)\)\((x, y)\) 线性组合出 \(\left(d^{\prime}, 0\right)\) ,那么新的 \(d\) 就是 \(\operatorname{gcd}\left(d, d^{\prime}\right)\) 了。新的 \(y\)\(\operatorname{gcd}(b, y)\),使用扩展欧几里得求出系数,算出新的 \(x\)