Iz0und T3rm1n4d0
Friday, August 7, 2009 10:20:02 PM
Problema: http://sophia.javeriana.edu.co/maratones/programacion/2008/piloto/contest/G.RoundRoundWeGo.pdf
Entrada:http://sophia.javeriana.edu.co/maratones/programacion/2008/piloto/contest/round.in
salida:http://sophia.javeriana.edu.co/maratones/programacion/2008/piloto/contest/G.round.out
Este es otro de los problemas, que vamos solucionanado, aun no estamos seleccionando problemas con mucha dificultad, pero no crean que no estan llenos de trampitas para que a uno se le totee la logica...
Entrada:http://sophia.javeriana.edu.co/maratones/programacion/2008/piloto/contest/round.in
salida:http://sophia.javeriana.edu.co/maratones/programacion/2008/piloto/contest/G.round.out
Este es otro de los problemas, que vamos solucionanado, aun no estamos seleccionando problemas con mucha dificultad, pero no crean que no estan llenos de trampitas para que a uno se le totee la logica...
public class Round {
private Vector combinaciones = new Vector ();
public static void main(String[] args) throws Exception {
Round r = new Round();
r.leer();
}
private void leer() throws Exception {
File f = new File ("Round.in");
BufferedReader entrada = new BufferedReader (new FileReader (f));
String linea;
while ((linea=entrada.readLine())!=null){
combinar(linea);
producto(linea);
}
}
private boolean producto(String linea) {
BigInteger x = new BigInteger(linea);
for (int i = 1; i <= linea.length(); i++) {
String j=String.valueOf(i);
BigInteger resultado = x.multiply(new BigInteger(j));
String solucion=String.valueOf(resultado);
boolean res= comparar(solucion);
if (res== false){
System.out.println(linea+" is not Cyclik");
return false;
}
}
System.out.println(linea+" is Cyclik");
return true;
}
private boolean comparar(String solucion) {
for (int i = 0; i < combinaciones.size(); i++) {
String number=(String)combinaciones.get(i);
if (solucion.equals(number)||solucion.equals(number.substring(1, number.length()))){
return true;
}
}
return false;
}
private void combinar(String linea) {
linea = linea+""+linea;
for (int i = 0; i < (linea.length()/2); i++) {
String sub = linea.substring(i, (linea.length()/2)+i);
combinaciones.add(sub);
}
}
}







Phicarphicar # Friday, August 7, 2009 11:28:32 PM