ツバサの備忘録

主に備忘録代わりに精進記録を載せていくつもりです。

ABC109 C - Skip

C - Skip
提出コード
好きなだけD移動できるので、全ての座標の差がDの倍数になっていれば、条件をクリアすることができます。
ということは、Dはすべての座標の公約数です。
Dの最大値を求めたいので、最大公約数を求めればよいです。
ということで、初期値を含めて全ての座標を同じ配列にいれ、ソートをします。
あとは、全ての座標の差の最大公約数を求めていけばおわりです。例えば、一番左端の二つの座標の差でans という変数を初期化し、残りの全ての座標の差について、ansとの最大公約数をとり、その都度ansを更新していく、みたいな方針だと実装することができます。