Mostrando entradas con la etiqueta 10019. Mostrar todas las entradas
Mostrando entradas con la etiqueta 10019. Mostrar todas las entradas

miércoles, 21 de enero de 2015

Solución 10019 Metodo de encriptación invertida

import java.util.Scanner;

/**
 *
 * @author dam101
 */
public class metodoencriptacion10019 {

    public static void main(String[] args) {
        Scanner leer = new Scanner(System.in);
        int numero, cant, num, cont1, cont2;
        int[] hex = {0, 1, 1, 2, 1, 2, 2, 3, 1, 2};
/*este array esla cantidad de unos en los 10 primeros numeros de la conversion de hexadecimal a binario.*/
        cant = leer.nextInt();
        for (int i = 0; i < cant; i++) {
            numero = leer.nextInt();
            num = numero;
            cont1 = 0;
            cont2 = 0;
            while (num >= 1) {
                if (num % 2 == 1) {
                    cont1++;
                }
                num /= 2;
            }
            String cadena = Integer.toString(numero);
            for (int j = 0; j < cadena.length(); j++) {
                cont2 += hex[Character.getNumericValue(cadena.charAt(j))];
            }
        System.out.println(cont1+" "+cont2);
        }
    }
}

SOLUCIONADO : Amanda y Santiago

lunes, 12 de enero de 2015

10019 - Método de Encriptación Divertido

El problema

Historia :

Un estudiante del Campus Monterrey ITESM plantea un nuevo método de encriptación para números. Este método consiste en los siguientes pasos:

Pasos: Ejemplo

1)      Lee un número N para encriptar M = 265
2)      Interpreta N como un número decimal X1 = 265 (decimal)
3)      Convierte la interpretación decimal de N a su representación binaria X1 = 100001001 (binario)
4)      Asigna b1 un número igual al número de 1’s en su representación binaria B1= 3
5)      Interpreta N como un número Hexadecimal X2 = 265 (hexadecimal)
6)      Convierte la interpretación hexadecimal de N a su representación binaria X2 = 1001100101
7)      Asigna a b2 un número igual al número de 1’s en la última representación binaria B2 = 5
8)      La encriptación es el resultado de M xor (b1*b2) M xor (3*5) = 262

Este estudiante pidió el número de bits a 1 en las dos representaciones para que el pudiera continuar concursando.