TopCoder SRM 587: JumpFurther
一歩進む、二歩進む、と続けていって、もし障害物にあたったら「一歩進む」をなかったことにする。
その直後のターンでは少なくとも「二歩以上進む」ことになるので必ず障害物は飛び越される。
public class JumpFurther { public int furthest(int N, int badStep) { int step = 0; for (int i = 1; i <= N; i++) { step += i; if (step == badStep) step--; } return step; } }