#runtime "hsp3cl" numMin=1 numMax=1000000001 repeat chkNum=(numMin+numMax)/2 mes strf("? %d(%d<=n<%d)",chkNum,numMin,numMax) sdim v: input v,,2 if v="1": numMin=chkNum: else: numMax=chkNum if numMin=numMax-1 { mes strf("! %d",numMin) break } loop