x=bax=b-aと置きます.すると,以下の2つが同値であることがわかります.

a<b0<xa<b \Leftrightarrow 0<x

つまりこの問題は「0<x0<xですか?」に言い換えることができます.

次に以下のような整数の集合SSを考えます.

S={x,x+1,x+2,x+3}S=\{x,x+1,x+2,x+3\}

このSSを考えることによって以下の命題が成立します.

  • 0<x{0}S=0<x \Rightarrow \{0\} \cap S =\emptyset

  • 0x{0}S0 \geq x \Rightarrow \{0\} \cap S \neq \emptyset

よって「xx3-3かどうか,2-2かどうか,1-1かどうか,00かどうか」をxxの値をインクリメントして調べていけばよいです.

実装上の注意としては,2回目の入力(3文字目)は空白を受け取っていて, bbを受け取るにはさらにもう1回入力を受け取らなければならないことに注意してください.

実装例(Brainfuck)
//2つの整数を受け取って,1つめのポインタにb-aを格納する
,>,,<[>-<-]
>[<+>-]

//N Yを格納するポインタを作る
+++++++++++[>+++++++>>++++++++<<<-]
>+>>+<<<<
[>+<-]

//実際にインクリメントして調べる
>[+[+[+[>]]]]

//答えを出力する
>.