Last active
October 30, 2016 17:36
-
-
Save cobymotion/6107cce952cf7f09918b161421ec73b0 to your computer and use it in GitHub Desktop.
Solution of problem: "Simple dishes"
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.util.*; | |
public class Main{ | |
//List para almacenar los numeros de cada uno de los casos, tendría la misma finalidad del arreglo | |
//La diferencia de esta es que no necesitamos especificarle el tamaño total | |
//Ademas podemos manejar genericos (<>) que significa que nuestra lista considerara que todos son enteros | |
// por lo tanto cuando las utilicemos podra usar las funciones especificas a Integer | |
private static List<Integer> cant =new ArrayList<Integer>(); | |
public static void main(String []args){ | |
//Clase para hacer la lectura | |
Scanner sc = new Scanner(System.in); | |
//pedimos el numero de casos | |
int numCase=sc.nextInt(); | |
//hacemos un ciclo para el numero de casos | |
for(int i=0;i<numCase;i++) | |
{ | |
//obtenemos el primer numero del caso | |
Integer num = new Integer(sc.nextInt()); | |
//si el numero es cero, simplemente cortamos el ciclo y lo continuamos | |
if(num==0) | |
continue; | |
// si es mayor que uno, entonces lo convertimos en una cadena correspondiente a su binario | |
String cad = Integer.toBinaryString(num); | |
//recorremos la cadena en orden inverso | |
for(int j=cad.length()-1;j>=0;j--) | |
// cada que encuentre un 1, entonces imprimimos la posicion restando la longitud menos lo que se avanzo | |
if(cad.charAt(j)=='1') | |
System.out.print(cad.length()-j-1 + " "); // no lleva salto de linea porque va imprimiendo numero a numero | |
System.out.println(""); // imprimimos el salto de linea para dejarlo listo para el siguiente caso | |
} // fin del for de casos | |
} // fin del main | |
} //fin de la clase |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment