martes, 26 de abril de 2011

3er ON LINE ACM

La fecha para el ON-LINE ES EL SÁBADO EN LA TARDE AQUI EL MENSAJE Q LO CONFIRMA

Los últimos dos días se genero un espacio para analizar la coincidencia de la competencia de la UCB y los online que siempre serán el ultimo sábado de cada mes.

He conversado con los organizadores de la competencia en la UCB y hemos decidido que el online sea por la tarde confirmando el mensaje de Alvaro Medina:

>>a solicitud de varias personas el concurso online de este Sabado 30 de Abril sera por el turno de la tarde.

>>Hora Inicio: 2:00 PM
>>duracion: 5 horas

>>para los concursantes de la UCB tengo entendido que el concurso comienza a las 2:30 PM asi que ambos concursos contemplaran el mismo puntaje en los >>problemas para el tema del ranking nacional de programadores (El Online no sera trasladado al domingo).

Sobre la puntuación en el ranking nacional de programadores (individual) si el Jefe de Carrera de Sistemas de la UCB lo aprueba y solo para quienes lo soliciten se validaría el puntaje obtenido en dicha competencia como si hubiera participado en el online como los demas.

Es bueno considerar para futuros eventos, repetir la modalidad que tenemos en la final latinoamericana donde el examen se libera en Valladolid cuando todas las sedes inician su competencia, asi se comparte las competencias y generan mas inclusion y medicion de nivel de los competidores entre los internos y externos.

Con esto cerramos las dudas y confusiones, el online de este sabado se confirma a las 2 de la tarde

Willmar A. Pimentel
-------------------

El link para ingresar al concurso es el siguiente: https://www.spoj.pl/ACMBO2/

cabe recalcar que a partir de este ONLINE el concurso es estrictamente individual y cualquier cuenta que sea manejada como grupal no sera valida para el puntaje final que entrara en el ranking nacional de programadores.

Es necesario que aquellas personas que participaron en el anterior online con una cuenta grupal vuelvan a registrarse de manera individual, el manual de inscripcion esta disponible en la pagina del grupo de la ACM ICPC Bolivia.

no se olviden que el nuevo grupo en el SPOJ se llama "Bolivia Programming Contest 2011" y para adicionarse al mismo deben ingresar la contraseña: acmicpcbolivia2011

Si existe algun problema al subir las soluciones de los problemas planteados verifiquen primero si es que estan dentro del grupo, caso contrario contactarse a mi mail, durante el concurso seguire monitoreando ante cualquier eventualidad.

SUERTE!!!
atte
Alvaro Javier Medina Balboa

Fuente ACM-BOLIVIA.

Las soluciones serán publicadas junto con los data sets en
http://acm-umsa-ndwich.blogspot.com/ --> Blog de mi equipo ggg

Saludos..

 

martes, 12 de abril de 2011

Creador de Diagramas de flujo

Este programa oz ayudara mucho al momento de presentar su informe pq te ayuda a hacer un diagrama decente, bien detallado y te lo genera código en distintos lenguajes te lo recomiendo OK.



DESCARGAR

sábado, 9 de abril de 2011

Herencia resuelto pregunta 1

Hola Aquí les dejo resuelto la practica de herencia primera pregunta cuando termine el resto lo subiré poco a poco, no tenia mucho tiempo para resolver los demás, si ven q algo esta mal o no saben q hice solo publiquen lo OK.

DESCARGAR

SALUDOS.

viernes, 8 de abril de 2011

Numeros Primos

Encuentra los numeros primos desde x hasta y, en este caso utilizamos una libreria llamada BigInteger, es muy interesante y mas rápido.
import java.math.BigInteger;
import java.util.Scanner;

class Main3 {
 public static void main(String[] args) {
  Scanner sc = new Scanner(System.in);
  BigInteger primo = BigInteger.ONE;
  int sw = 0;
  int in = sc.nextInt();
  int fin = sc.nextInt();
  for (int i = in; i <= fin; i++) {
   primo = BigInteger.valueOf(i);
   if (primo.isProbablePrime(1)) {
    System.out.println(i + " ");
   }
  }
 }
}

miércoles, 6 de abril de 2011

Siguiente Palindromo

El palíndromo Siguiente

Un entero positivo se llama un palíndromo si su representación en el sistema decimal es el mismo cuando se lee de izquierda a derecha y de derecha a izquierda. Para un entero positivo k dado de no más de 1000000 dígitos, escribir el valor de los más pequeños palíndromo más grande que K a la salida. Los números son siempre aparecen sin ceros a la izquierda.

De entrada

La primera línea contiene t entero, el número de casos de prueba. Enteros de K se dan en las líneas t siguiente.
Salida

Para cada salida de K, la más pequeña palíndromo más grande que K.
Ejemplo

Entrada:
2
808
2133
Salida:
818
2222

Como nos enseñaron en INF-111
import java.util.Scanner;
class palindromo {
 public static void main(String[] args) {
  Scanner sc2 = new Scanner(System.in);
  int lim = sc2.nextInt();
  for (int i = 1; i <= lim; i++) {
   int print = Integer.parseInt(SigPalin(Integer.toString(sc2.nextInt())));
   System.out.print(print + "\n");
  }
 }

 // Integer.toString() combierte un entero a cadena
 // Integer.parseInt() combierte una cadena a entero
 public static String SigPalin(String cad) {
  boolean j = true;
  String cas = cad;
  int aux = Integer.parseInt(cas);
  String invert = "";
  while (j) {
   aux++;
   cas = Integer.toString(aux);
   invert = "";
   cas = cas.trim();
   for (int i = cas.length() - 1; i >= 0; i--) {
    invert = invert + cas.charAt(i);
   }
   if (invert.equals(cas)) {
    j = false;
   }
  }
  return invert;
 }
}
COMO NOS ESTÁN ENSEÑANDO EN INF-121
import java.util.Scanner;

public class Palindrome {
 private int lim;
 private String vec[] = new String[20];

 public Palindrome() {
  lim = 2;
  vec[1] = "808";
  vec[2] = "2133";
 }

 public void leer() {
  Scanner sc = new Scanner(System.in);
  Scanner sc2 = new Scanner(System.in);
  System.out.println("Cuantos ciclos tendra ?");
  lim = sc.nextInt();
  for (int i = 1; i <= lim; i++) {
   System.out.println("Numero " + i + " :");
   String lec = sc2.nextLine();
   vec[i] = SigPalin(lec);
  }
 }

 public void mostrar() {
  System.out.println("Num de ciclos " + lim);

  for (int i = 1; i <= lim; i++) {
   System.out.println("El siguiente Palindromo es :");
   System.out.println(vec[i]);
  }
 }

 public static String SigPalin(String cad) {
  boolean j = true;
  String cas = cad;
  int aux = Integer.parseInt(cas);
  String invert = "";
  while (j) {
   aux++;
   cas = Integer.toString(aux);
   invert = "";
   cas = cas.trim();
   for (int i = cas.length() - 1; i >= 0; i--) {
    invert = invert + cas.charAt(i);
   }
   if (invert.equals(cas)) {
    j = false;
   }
  }
  return invert;
 }
}

MAIN O PRINCIPAL
public class Main {

 public static void main(String[] args) {
  Palindrome a = new Palindrome();
  Palindrome b = new Palindrome();

  System.out.println("CONSTRUCTOR POR DEFECTO");
  b.mostrar();
  System.out.println("---------->");
  System.out.println();
  a.leer();
  System.out.println();
  a.mostrar();

 }

}