Cuando un número es expresado en binario, el dígito k-th representa un múltiplo de 2k. Por ejemplo,
En binario skew, el dígito k-th representa un múltiplo de 2k+1 - 1.Los únicos dígitos posibles son el 0 y el 1, excepto que el menos significante dígito nonzero puede ser un 2.Por ejemplo,
Los primeros 10 números en binario skew son el 0, 1, 2, 10, 11, 12, 20, 100 y 102. (Binario skew es útil en diferentes aplicaciones porque es posible añadir con un máximo acarreado. Sin embargo, esto no tiene nada que ver con el siguiente problema.)
Input
La entrada contiene una o mas líneas, cada cual contiene un entero n. Si n = 0 señaliza el final de la entrada, y de lo contrario n es un no negativo entero en binario skew.Output
Por cada numero, sale el decimal equivalente.El valor decimal de n como máximo será 231 - 1 = 2147483647.Ejemplo de Entrada
10120 200000000000000000000000000000 10 1000000000000000000000000000000 11 100 11111000001110000101101102000 0
Ejemplo de Salida
44 2147483646 3 2147483647 4 7 1041110737
FUENTE: http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=7&page=show_problem&problem=516
Autor traducción: Jesús Casasnovas Garde.
No hay comentarios:
Publicar un comentario