El link del Problema se encuentra en el siguiente enlace
import java.util.Scanner;
/**
* 5355 - Baudot Data Communication Code [http://livearchive.onlinejudge.org]
* 740 - Baudot Data Communication Code [http://uva.onlinejudge.org]
*
* @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
char[][] codigo = new char[2][32]; // para los codigos
String mensajeCod, mensajeRecod; // para recodificar el mensaje
byte i; // para los bucles
byte shift; // para saber si es down_shift o up_shift
// AQUI INICIA EL PROGRAMA
Lee = new Scanner(System.in);
// leemos down-shift y up-shift
codigo[0] = Lee.nextLine().toCharArray();
codigo[1] = Lee.nextLine().toCharArray();
while(Lee.hasNextLine()){
mensajeCod = Lee.nextLine();
mensajeRecod = "";
shift = 0;
for(i = 0; i < mensajeCod.length(); i += 5){
if(Byte.parseByte(mensajeCod.substring(i, i + 5), 2) == 27)
shift = 0;
else
if(Byte.parseByte(mensajeCod.substring(i, i + 5), 2) == 31)
shift = 1;
else
mensajeRecod += (codigo[shift][Byte.parseByte(mensajeCod.substring(i, i + 5), 2)]);
}
// mostramos el texto decodificado
System.out.println(mensajeRecod);
}
}
}
|
No comments:
Post a Comment