https://atcoder.jp/contests/tkppc4-2/tasks/tkppc4_2_a
解説
https://atcoder.jp/contests/tkppc4-2/submissions/7031891
操作を見ると、y座標は+2するしかないので、yが負の場合は達成できない。
目標のy座標の上限が105なので、多くても105/2回くらいしか操作できない。
よって、シミュレーションしてみよう。
x座標は-1か+1かどちらかであるが、目標のx座標により近い方に貪欲に選択していけばいい。
int x, y; //--------------------------------------------------------------------------------------------------- int solve() { if (y < 0) return -1; int ans = 0; int xx = 0, yy = 0; while(yy < y) { ans++; if(xx < x) xx++; else xx--; yy += 2; } if(xx != x or yy != y) return -1; return ans; } //--------------------------------------------------------------------------------------------------- void _main() { cin >> x >> y; cout << solve() << endl; }