### niklasb's blog

By niklasb, 5 years ago, ,

Can somebody describe their solution to http://codeforces.com/gym/100519/problem/I ? Somehow I can't shake the feeling that it's enough to always multiply with 2, but I cannot substantiate my intuition to turn this into an algorithm.

• +15

 » 5 years ago, # | ← Rev. 2 →   +10 spoiler
•  » » 5 years ago, # ^ |   0 The first one is more along the lines of what I was thinking :) The second idea is magical.
 » 5 years ago, # | ← Rev. 5 →   +26 It became one of my favourite problems few days ago :)! Indeed, we will use just multiplying by 2. Consider fraction . If we have a fraction f, we multiply it by 2 and then receive information ">" we know that and if we receive "<", we know that . Inductively if we receive informations "<<>><><" and we change each "<" to "1" and ">" to "0" (unless p! = 2 we can't receive "=") we got a prefix of binary representation of f (following "0."), so "<<>><><" changes to "0011010" and we know that . Using 40 questions we can get approximation of with error at most 2 - 40, but if and are potential starting fractions we know that , so this precision is sufficient to uniquely determine starting fraction :)!
•  » » 5 years ago, # ^ |   +5 Oh wow, that's a really nice solution! Thanks for sharing.
•  » » 5 years ago, # ^ |   0 Amazing！
•  » » 5 years ago, # ^ |   0 Oh my god
 » 5 years ago, # |   0 A wise man.^_^