Ural 1286. Starship Travel (扩展欧几里得)

题意:给你p、q,初始状态(x1, y1),终点状态(x2, y2),每次操作可以是 (+p, +q), (+p, -q) , (-p, +q), (-p, -q), (+q, +p), (+q, -p), (-q, +p), (-q, -p),问初始状态能不能到终点状态。


思路:对于初始状态到终止状态变化了 (x2-x1, y2-y1),设为变化了(A, B) ,得方程 px1 + qy1 = A, px2 + qy2 = B,很容易得知满足x1, y2奇偶情况相同和y1,x2奇偶情况相同就可以。然后只需要算出x,y的相对奇偶情况,比较下就可以了。

坑的是。。。明明FAQ里写成64位用long long,为何我改成__int64才过。。。坑了好久啊

code:


Ural 1286. Starship Travel (扩展欧几里得)

上一篇:解释器模式——Head First Design Patterns


下一篇:AndroidUI--SlidingMenu使用例子,android面试试题