key=[0]*10 lock=[false]*10 keyprev=nil changedidx=nil jprev=nil loop{ puts key*"";STDOUT.flush j=gets.split(" ")[0].to_i exit if j==10 if jprev==nil changedidx=0 else if jprev < j # 正解増えた lock[changedidx]=true elsif jprev > j # 減った lock[changedidx]=true key = keyprev.clone end end jprev=j changedidx.upto(9){|i| next if lock[i] keyprev = key.clone changedidx=i key[i]=(key[i]+1)%10 break } }