問題
https://codeforces.com/contest/1304/problem/A
問題概要
数直線上で、座標xから一跳びごとに正方向にa進むうさぎと座標y(x < y)から一跳びごとに負の方向にb進むうさぎがいる。
二匹のうさぎが同一の座標に移動することはあるか?あるなら何回跳んだ時にそうなるか?
考察
二匹の距離は、一跳び毎にa + b
詰まっていきますので、最初の距離y - x
がa + b
の倍数なら(y - x
がa + b
で割り切れるなら)、座標が一致するタイミングが存在して、そこまでに跳んだ回数はとなります。
#include <bits/stdc++.h> using namespace std; const int INF = 1000000001; int main() { int t; cin >> t; while (t--) { int x, y, a, b; cin >> x >> y >> a >> b; if ((y - x) % (a + b) != 0) { cout << -1 << endl; } else { cout << (y - x) / (a + b) << endl; } } }