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

miércoles, 21 de enero de 2015

1585-SCORE

import java.util.Scanner;

/**
 *
 * @author dam114
 */
public class Main {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int cont = 0, resultado = 0, lectura, cont2 = 0;
        String cadena;
        Scanner leer = new Scanner(System.in);
        lectura = leer.nextInt();
        leer.nextLine();
        do {
            cadena = leer.nextLine();
            cont2++;
            for (int i = 0; i < cadena.length(); i++) {
                if (cadena.charAt(i) == 'O') {
                    cont++;
                    resultado = cont + resultado;

                } else {
                    cont = 0;

                }
            }
            System.out.println(resultado);
            resultado = 0;
            cont = 0;
        } while (cont2 != lectura);

    }
}

Solucionado por Valeiras

Referencia: http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=4460

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);
        }
    }
}

Solución UVA 1585

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package pkg1585uva;

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner entrada = new Scanner(System.in);
        int suma = 0, sumatotal = 0, casos, cont = 0;
        String cadena;
        System.out.println("Introduce los numeros de casos");
        casos = entrada.nextInt();
        do {

            cadena = entrada.next();
            cont++;
            for (int i = 0; i < cadena.length(); i++) {
                if (cadena.charAt(i) == 'O') {
                    suma++;
                    sumatotal = sumatotal + suma;
                } else if (cadena.charAt(i) == 'X') {
                    suma = 0;

                }
            }
            System.out.println(sumatotal);
            sumatotal = 0;

        } while (casos != cont);

    }

}

Solucionado por Jesús
Enlace de referencia: http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=4460

lunes, 12 de enero de 2015

UVA 1585 Puntuacion



Dado un resultado objetivo de un test como "OOXXOXXOOO". Una 'o' quiere decir respuesta correcta de un problema y una "x" respuesta incorrecta. La puntuación de cada problema del test se caclucla a partir de si misma y de las "o" previas consecutivas, sólo cuando la respuesta es correcta. Por ejemplo, la puntuación del décimo problema es 3 que se obtiene de sí misma y de las dos "o"s consecutivas previas. Por tanto, la puntuación para "OOXXOXXOOO" es 10 que se calcula como: ``1+2+0+0+1+0+0+1+2+3".

Tienes que escribir un programa para calcular las puntuaciones de los test.

Entrada 


Tu programa leerá de la entrada estándar. La entrada consite en T casos de test. El numero T de test se da en la primera línea. Cada test comienza con una línea que contiene una cadena compuesta por "o" y "x" y la longitud de la cadena es mayor que cero y menor que 80. No hay espacios entre "o " y "x".

Salida 

El programa escribirá en la salida estándar. Imprime exactamente una línea por cada caso de test. la línea contendrá la puntuación del caso de test.

El siguiente ejemplo muestra un caso con cinco test.

Sample Input 

5 
OOXXOXXOOO 
OOXXOOXXOO 
OXOXOXOXOXOXOX 
OOOOOOOOOO 
OOOOXOOOOXOOOOX

Sample Output 


10 
9 
7 
55 
30