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();
}
}
|
No comments:
Post a Comment