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

miércoles, 4 de febrero de 2015

Solución 100 - El problema 3n + 1


package The_3n_problem;

import java.util.Scanner;

public class The_3n_1_problem {

    public static void main(String[] args) {
        Scanner leer = new Scanner(System.in);
        int mayor, num1, num2, max, min;

        do {
            mayor = 0;
            num1 = leer.nextInt();
            num2 = leer.nextInt();
         
            if (num1 > num2) {
                max = num1;
                min = num2;
            } else {
                max = num2;
                min = num1;
            }
         
            for (int i = min; i <= max; i++) {
                if (get3n(i) > mayor) {
                    mayor = get3n(i);
                }
            }
            System.out.println(num1 + " " + num2 + " " + mayor);

        } while (leer.hasNext());
    }
 

100 - El problema 3n + 1

 El problema 3n + 1 

Trasfondo

Los problemas en ciencias computacionales son siempre clasificados según pertenezcan a ciertas clases de problemas (por ejemplo, NP, Irresolvibles, Recursivos). En este problema tendrás que analizar las propiedades de un algoritmo cuya clasificación no es conocida por todas las posibles entradas.


El Problema

Considerando el siguiente algoritmo:

1.       Entrada n
2.       Imprime n
3.       Si n = 1 entonces PARA
4.       Si n es impar entonces n ß 3n + 1
5.       Si no n ß n/2
6.       Volver al paso 2

miércoles, 21 de enero de 2015

Solución UVA Tex Quotes

package TEX_Quotes_272;

import java.util.Scanner;

public class TEX_Quotes_272 {

    public static void main(String[] args) {
        String cadena;
        Scanner leer = new Scanner(System.in);
        int cont = 1;

        do {

            cadena = leer.nextLine();

            for (int i = 0; i < cadena.length(); i++) {
                if (cadena.charAt(i) == '"') {
                    if (cont % 2 != 0) {
                        System.out.print("``");
                    } else {
                        System.out.print("''");
                    }
                    cont++;
                } else {

                    System.out.print(cadena.charAt(i));
                }
            }
            System.out.println();
        } while (leer.hasNext());
    }
}

Solución UVA 1585 Score


package Puntuacion_1585;

import java.util.Scanner;

public class Puntuacion_1585 {

    public static void main(String[] args) {
        int num;
        String respuesta;
        boolean spree = true;
        int conteo;
        int puntaje;

        Scanner leer = new Scanner(System.in);

        num = leer.nextInt();
        leer.nextLine();
        for (int i = 0; i < num; i++) {

            respuesta = leer.nextLine();

            puntaje = 0;
            conteo = 0;

            for (int j = 0; j < respuesta.length(); j++) {
                if (!spree) {
                    conteo = 0;

                }
                if (respuesta.charAt(j) == 'O') {
                    conteo = conteo + 1;
                    puntaje = puntaje + conteo;
                    spree = true;
                } else {
                    spree = false;
                }
            }
         
            System.out.println(puntaje);
        }
    }
}

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.