Quiz
https://atcoder.jp/contests/tkppc4-2/tasks/tkppc4_2_a
AC Code
https://atcoder.jp/contests/tkppc4-2/submissions/6608047
感想
- 1WAしてしまった
- yが0以上の偶数であれば、飛ぶ回数は決まる
- それがn回、たとえば5だとすると、xとして作れるのは-5, -3, -1, 1, 3, 5
- nとxのparityを見れば判定できる
負値をmod
cppでは、 -3%2 =-1 となる
x = abs(x)
しておく必要があった。
Code
ll x, y; cin >> x >> y; x = abs(x); if(y<0){ p(-1); return 0; } if(y%2==1){ p(-1); return 0; } pn(-3%2); ll n = y/2; if(-n<=x && x<=n){ if(x%2==n%2){ p(n); }else{ p(-1); } return 0; } else{ // 範囲外 p(-1); return 0; }
学び
- 負値をmodするべからず