Блог пользователя failure_forever

Автор failure_forever, история, 3 года назад, По-английски

Can anyone tell me how to do this question: Binary Number. What is the intuition behind?

  • Проголосовать: нравится
  • -5
  • Проголосовать: не нравится

»
3 года назад, скрыть # |
 
Проголосовать: нравится 0 Проголосовать: не нравится

It's brute force. Try maintaining a carry variable along the way and handle rightmost bit.

»
3 года назад, скрыть # |
Rev. 2  
Проголосовать: нравится 0 Проголосовать: не нравится
/*
Here is my approch, Let's consider the second sample 1001001  

1001001  -> action = 0 (odd, add 1)
1001010  -> action = 1 (even, right shift by 1)
100101   -> action = 2 (odd, add 1)
100110   -> action = 3 (even, right shift by 1)
10011    -> action = 4 (add)
10100    -> action = 5 (even, right shift by 1)
1010     -> action = 6 (even, right shift by 1)
101      -> action = 7 (add)
110      -> action = 8 (even, right shift by 1)
11       -> action = 9 (add)
100      -> action = 10 (even, right shift by 1)
10       -> action = 11 (even, right shift by 1)
1        -> action = 12 (result)

*/