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

miércoles, 4 de febrero de 2015

453 - Intersecting Circles(La intersección de los círculos)

La ecuación de un círculo con radio r y centrotex2html_wrap_inline29 es


Escriba un programa que compare dos círculos para ver si se cruzan y, si lo hacen, calcular los puntos de intersección. (Puede haber 1, 2, o un número infinito de tales puntos).

Entrada

La entrada a este programa consistirá en un número par de líneas. Cada dos líneas representan un problema de intersección. Cada línea contendrá 3 números reales que constituyen los parámetros tex2html_wrap_inline33 , tex2html_wrap_inline35  y r de un círculo.

Salida

Para cada problema, la salida debe ser las palabras “No hay intersección” si los círculos no tienen intersección.

Cuando tienen un número infinito de puntos de intersección, la salida debe ser las palabras "Los círculos son iguales".

Si hay intersección en 1 o 2 puntos, la salida debe ser una línea con, respectivamente,  uno o dos pares de números reales que dan las coordenadas X e Y de cualquier punto de intersección. Los pares deben ser ordenados primero por su coordenada X, y cuando éstas son iguales por su coordenada Y.

Entrada ejemplo

0.0 0.0 1.0
3.0 0.0 1.0
0.0 0.0 1.0
0.0 0.0 1.0
0.0 0.0 1.0
1.0 0.0 1.0

Salida ejemplo

No hay intersección
Los círculos son iguales
(0.500,-0.866)(0.500,0.866)

Enunciado original:
Fuente


miércoles, 21 de enero de 2015

Solucion 1585

import java.util.Scanner;
/**
 *
 * @author dam123
 */
public class Uva1585 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner leer = new Scanner(System.in);
        int casos, puntos, total;
        String cadena;

        //System.out.println("Introduzca numero de casos");
        casos = leer.nextInt();
        leer.nextLine();
        for (int i = 0; i < casos; i++) {
            cadena = leer.nextLine();
            puntos=total=0;
            for (int j = 0; j < cadena.length(); j++) {
                if (cadena.charAt(j) == 'O') {
                    puntos++;
                    total += puntos;
                } else /*if (cadena.charAt(j) == 'X')*/ {
                    puntos = 0;
                }
            }
            System.out.println(total);
        }

    }
   
}

lunes, 12 de enero de 2015

737 - Gleaming the Cubes

Como ingeniero jefe de la nave estelar Interprize, la tarea de reparar el hyperstellar, software transwarped de salida cúbico ha caído sobre sus hombros. En pocas palabras, se debe calcular el volumen de la intersección de cualquier lugar 2-1000 cubos.

Entrada y Salida

El archivo de datos de entrada consta de varios conjuntos de cubos para el que se debe calcular el volumen de sus intersecciones. La primera línea del archivo de datos contiene un número (de 2 a 1000) que indica el número de cubos que siguen, un cubo por línea. Cada línea que describe un cubo contiene cuatro enteros. Los tres primeros números enteros son las coordenadas x, y, y z de la esquina de un cubo, y el cuarto número entero positivo es la distancia que el cubo se extiende en cada una de las tres direcciones (paralelo a los ejes x, y, y z) a partir de esa esquina.

Después de los datos para el primer conjunto de cubos será un número que indica cuántos cubos están en un segundo conjunto, seguido por las descripciones de cubos para el segundo conjunto, de nuevo uno por línea. Después de esto será un tercer conjunto, y así sucesivamente. Su programa debe seguir para procesar conjuntos de cubos, la salida del volumen de sus intersecciones para el archivo de salida, un juego por la línea, hasta un cero es leído por el número de cubos.

Tenga en cuenta que el archivo de datos siempre contendrá al menos un conjunto de cubos, y cada conjunto contendrá al menos 2 y en la mayoría de 1000 cubos. Para cualquier conjunto dado de cubos, el volumen de sus intersecciones no excederá de 1.000.000 unidades.