Friday, October 21, 2011

Solución a 1785 - Lost in Localization [http://acm.timus.ru]

Solución a 1785 - Lost in Localization [http://acm.timus.ru]
El enunciado esta en el siguiente link enunciado

import java.util.Scanner;

/**
 * 1785 - Lost in Localization [http://acm.timus.ru]
 * 
 * @author BreakDark
 * @version 1.0 beta
 */
// ACEPTADO!!! xD
public class Main {
 public static void main(String[] args) {
  Scanner Lee; // para leer los datos de entrada
  short n; // para el numero a evaluar

  // AQUI INICIA EL PROGRAMA!!!
  Lee = new Scanner(System.in);
  while (Lee.hasNext()) {
   n = Lee.nextShort();
   // evaluamos
   if (n > 4)
    if (n > 9)
     if (n > 19)
      if (n > 49)
       if (n > 99)
        if (n > 249)
         if (n > 499)
          if (n > 999)
           System.out.println("legion");
          else
           System.out.println("zounds");
         else
          System.out.println("swarm");
        else
         System.out.println("throng");
       else
        System.out.println("horde");
      else
       System.out.println("lots");
     else
      System.out.println("pack");
    else
     System.out.println("several");
   else
    System.out.println("few");
  }
 }
}

Solución a 2052 - Number Steps [ACM - ICPC]

Solución a 2052 - Number Steps [ACM - ICPC]
El enunciado esta en el siguiente link enunciado

import java.util.Scanner;

/**
 * 2052 - Number Steps [ACM - ICPC]
 * 
 * @author BreakDark
 * @version 1.0 beta
 */
 // ACEPTADO!!! xD
public class Main {
 public static void main(String[] args) {
  Scanner Lee; // para leer los datos de entrada
  int N; // el numero de casos de prueba
  short x, y; // pra las coordenadas
  short[][] mat; // matriz para generar los numeros

  // AQUI INICIA EL PROGRAMA
  Lee = new Scanner(System.in);
  mat = generarMatriz();
  N = Lee.nextInt();
  while(N > 0){
   x = Lee.nextShort();
   y = Lee.nextShort();
   if(x == 0 && y == 0)
    System.out.println("0");
   else{
    if(mat[y][x] > 0)
     System.out.println(mat[y][x]);
    else
     System.out.println("No Number");
   }
   N--;
  }
 }
 /** Funcion que genera la matriz para que luego sea evaluada por el programa */
 private static short[][] generarMatriz() {
  short[][] r = new short[5002][5002];
  short c = 1; // valor acumulable
  boolean sw = true;
  for(short i = 1; i < 5001; i++){
   if(sw){
    r[i][i] = c++;
    r[i - 1][i + 1] = c++;
   }
   else{
    r[i - 1][i + 1] = c++;
    r[i][i] = c++;
   }
   sw = !sw;
  }
  return r;
 }
}

Thursday, October 20, 2011

Solución a 2070 - Simple Encryption [ACM-ICPC]

Solución a 2070 - Simple Encryption [ACM-ICPC]
El enunciado esta en el siguiente link enunciado

import java.util.Scanner;

/**
 * 2070 - Simple Encryption [ACM-ICPC]
 * 
 * @author BreakDark
 * @version 1.0 beta
 */
// ACEPTADO!!! xD
public class Main {
 public static void main(String[] args) {
  Scanner Lee; // para leer los datosd e entrada
  byte numCol; // numero de columnas
  int numFil; // numero de filas
  String cadena; // cadena a desencriptar
  char[][] mat; // matriz de caracteres
  int i, j; // para los bucles

  // AQUI INICIA EL PROGRAMA
  Lee = new Scanner(System.in);
  numCol = Lee.nextByte();
  while(numCol != 0){
   cadena = Lee.next();
   numFil = cadena.length() / numCol;
   mat = new char[numFil][numCol];
   // llenamos la matriz
   j = 0;
   for(i = 0; i < numFil; i++){
    mat[i] = cadena.substring(j, j + numCol).toCharArray();
    j += numCol;
   }
   // mostramos la matriz
   mostrarMatriz(mat);
   numCol = Lee.nextByte();
  }
 }
 /** Procedimiento que evalua la matriz y muestra el resultado */
 private static void mostrarMatriz(char[][] mat) {
  int numFil = mat.length;
  int numCol = mat[0].length;
  int i, j, k;
  i = 0;
  j = 0;
  k = 1;
  while(k <= numFil + numCol - 1){
   System.out.print(mat[i][j]);
   i++;
   j--;
   if(j < 0 || i >= numFil){
    if(k < numCol){
     j = k;
     i = 0;
    }
    else{
     j = numCol - 1;
     i = k - numCol + 1;
    }
    k++;
   }
  }
  System.out.println();
 }
}

Saturday, October 15, 2011

Solución a G. Prediction Contest [http://acm.timus.ru]

Solución a G. Prediction Contest [http://acm.timus.ru]
El enunciado esta en el siguiente link enunciado

import java.util.Scanner;

/**
 * G. Prediction Contest [http://acm.timus.ru]
 * 
 * @author BreakDark
 * @version 1.0 beta
 */
// ACEPTADO!!! xD
public class Main {
 public static void main(String[] args) {
  Scanner Lee, LeerLinea;
  byte n;
  int nk;
  String[] ganadores = new String[12];
  int i, j;
  int sum; // monto total a pagar
  String universidad;
  byte premio;
  int[] sumParcial;
  int sumMayor;

  // AQUI INICIA EL PROGRAMA
  Lee = new Scanner(System.in);
  while (Lee.hasNextLine()) {
   sumMayor = 0;
   for (i = 0; i < 12; i++)
    ganadores[i] = Lee.nextLine();
   n = (new Scanner(Lee.nextLine()).nextByte());
   sumParcial = new int[n];
   for (j = 0; j < n; j++) {
    nk = (new Scanner(Lee.nextLine()).nextInt());
    while (nk > 0) {
     LeerLinea = new Scanner(Lee.nextLine());
     universidad = LeerLinea.next();
     LeerLinea.next();
     switch (LeerLinea.next().charAt(0)) {
     case 'g':
      premio = 4;
      break;
     case 's':
      premio = 8;
      break;
     default:
      premio = 12;
      break;
     }
     // aqui se hace el proceso
     for (i = premio - 4; i < premio; i++) {
      if (ganadores[i].contentEquals(universidad)
        || universidad.contentEquals(ganadores[i]))
       sumParcial[j]++;
     }
     nk--;
    }
    if (sumParcial[j] > sumMayor)
     sumMayor = sumParcial[j];
   }
   // sumamos 5 por cada uno que logro el maximo
   sum = 0;
   for (i = 0; i < n; i++) {
    if (sumParcial[i] == sumMayor)
     sum += 5;
   }
   System.out.println(sum);
  }
 }
}

Solución a 1293 - Eniya [http://acm.timus.ru]

Solución a 1293 - Eniya [http://acm.timus.ru]
El enunciado esta en el siguiente link enunciado

import java.util.Scanner;

/**
 * 1293 - Eniya [http://acm.timus.ru]
 * 
 * @author BreakDark
 * @version 1.0 beta
 */
// ACEPTADO!!! xD
public class Main {
 public static void main(String[] args) {
  Scanner Lee; // para leer los datos de entrada
  byte N, A, B;

  // EL PROGRAMA INICIA AQUI
  Lee = new Scanner(System.in);
  while (Lee.hasNext()) {
   N = Lee.nextByte();
   A = Lee.nextByte();
   B = Lee.nextByte();
   System.out.println(A * B * 2 * N);
  }
 }
}

Solución a 1068. Sum [http://acm.timus.ru]

Solución a 1068. Sum [http://acm.timus.ru]
El enunciado esta en el siguiente link enunciado

import java.util.Scanner;

/**
 * 1068 - Sum [http://acm.timus.ru]
 * 
 * @author BreakDark
 * @version 1.0 beta
 */
// ACEPTADO!!! xD
public class Main {
 public static void main(String[] args) {
  Scanner Lee; // para leer los datos de entrada
  int sum;
  short N;

  // AQUI INICIA EL PROGRAMA
  Lee = new Scanner(System.in);
  while (Lee.hasNext()) {
   sum = 0;
   N = Lee.nextShort();
   if (N >= 1)
    while (N >= 1) {
     sum += N;
     N--;
    }
   else
    while (N <= 1) {
     sum += N;
     N++;
    }
   System.out.println(sum);
  }
 }
}

Saturday, October 08, 2011

Solución al problema Factorial - Problem code: FCTRL [http://www.codechef.com]

Solución al problema Factorial - Problem code: FCTRL [http://www.codechef.com]
El enunciado del problema esta en el siguiente link enunciado

import java.util.Scanner;

/**
 * Factorial - Problem code: FCTRL [http://www.codechef.com]
 * 
 * @author BreakDark
 * @version 1.0 beta
 */
// ACEPTADO!!! xD
public class Main {
	public static void main(String[] args) {
		Scanner Lee; // para leer los datos de entrada
		int T; // para leer cuantos TEST se debe realizar

		// AQUI INICIA EL PROGRAMA
		Lee = new Scanner(System.in);
		// leemos T
		T = Lee.nextInt();
		while (T > 0) {
			System.out.println(funcionZ(Lee.nextInt()));
			T--;
		}
	}

	/** Función Z de N */
	private static int funcionZ(int n) {
		int r = 0;
		while (n >= 5) {
			n /= 5;
			r += n;
		}
		return r;
	}
}

Solución al problema ATM Problem code: HS08TEST [http://www.codechef.com]

Solución al problema  HS08TEST - ATM  [http://www.codechef.com]
el enunciado esta en el siguiente link enunciado

import java.util.Scanner;

/**
 * ATM Problem code: HS08TEST [http://www.codechef.com]
 * 
 * @author BreakDark
 * @version 1.0 beta
 */
// ACEPTADO!!! xD
public class Main {
 public static void main(String[] args) {
  Scanner Lee; // para leer los datos de entrada
  int montoRetirar; // monto a retirar
  int saldo; // saldo multiplicado por dos

  // AQUI INICIA EL PROGRAMA
  Lee = new Scanner(System.in);
  while (Lee.hasNext()) {
   montoRetirar = Lee.nextInt() * 100;
   saldo = (int) (Double.parseDouble(Lee.next()) * 100);
   // preguntar si hay saldo suficiente
   if (montoRetirar <= saldo - 50) {
    // preguntar si el monto es multiplo de 5
    if (montoRetirar % 500 == 0) {
     saldo -= montoRetirar;
     saldo -= 50;
    }
   }
   // mostramos el saldo sobrante
   System.out.println(String.format("%.2f", ((double) (saldo) / 100))
     .replace(',', '.'));
  }
 }
}

Solución al problema Life, the Universe, and Everything Problem code: TEST [http://www.codechef.com]

Solución al problema Life, the Universe, and Everything Problem code: TEST [http://www.codechef.com]
El enunciado esta en este link enunciado

import java.util.Scanner;

/**
 * Life, the Universe, and Everything Problem code: TEST
 * [http://www.codechef.com]
 * 
 * @author BreakDark
 * @version 1.0 beta
 */
// ACEPTADO!!! xD
public class Main {
	public static void main(String[] args) {
		Scanner Lee; // para leer los datos de entrada
		byte num; // para leer el numero y mostrarlo

		// Aqui inicia el programa
		Lee = new Scanner(System.in);
		num = Lee.nextByte();
		while (num != 42) {
			System.out.println(num);
			num = Lee.nextByte();
		}
	}
}

Wednesday, October 05, 2011

LAB-131

 Ejercicios para Paralelo D DEF3 LAB-131-2011
puedes descargarlo de aqui
http://www.4shared.com/document/KqSWvDCj/Ejercicios_para_Paralelo_D_DEF.html

Solo para los alumnos de LAB-131 Paralelo D Informatica UMSA.
Los informes deben tener los siguientes puntos.
- Enunciado
- Analisis del problema
- Diagrama de clases
- Codigo manuscritos solo de las funciones y métodos que se implementen para la solucion detallando a que clase pertenecen, no es necesario escribir todo el código (Solo escribir sus metodos implementados por ustedes).
- Captura de pantalla de la ejecucion.

Notas preliminares de Informe de Laboratorio de LAB-131 Paralelo D
Lic. Tarquino


Nombre

CI

Informes de Laboratorio 3 pts. cada uno

Total

1º P-CC

2º MP-MC




1

Alfaro Jemio Miguel Alejandro

4782715

2,0

2,0







4,0

2

Aruquipa Machaca Marco Antonio

6890329

1,0









1,0

3

Atahuachi Mamani Rubén Ricardo

6084913

1,0

0,8







1,8

4

Bravo Lecoña Gladys

6791524

3,0

3,0







6,0

5

Callizaya Coquendo Efraín

6956383

1,8

2,0







3,8

6

Chávez Reyes Alex Rodrigo

8326973

0,7

2,0







2,7

7

Choque Mendoza Ever Edson

7015803

2,5









2,5

8

Chura Mamani Sergio Raúl

6068525

2,5









2,5

9

Copa Pariapaza Yerson Marvin



3,0

2,0







5,0

10

Espinal Alvarez Iván Sergio

8264274

3,0

3,0







6,0

11

Espinoza Tito Priscila Wendy

8341027

3,0

3,0







6,0

12

Gutiérrez Titirico D'Jalmar

6867562

1,1

3,0







4,1

13

Huallpara Meicias Israel José





1,0







1,0

14

Ibañes Yujra David Isrrael



1,4

3,0







4,4

15

Limachi Mamani Nandy Rocio

6073715

0,7









0,7

16

Pederma Parada Daniel Mauricio

4771462

3,0

3,0







6,0

17

Rojas Febrero María Luisa



0,7









0,7

18

Villar Pabón Siacir

4904503

1,0

0,8







1,8



Cualquier consulta o reclamo, comenten aqui, o escriban abreakdark666@yahoo.es
jrmonnroy@umsa.bo

SALUDOS