package fs;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
*
* @author cteam025
*/
//FENDSVTSLHW.EDATS,EULAY
public class Fs {
StringBuilder message = new StringBuilder();
int ukazovatko = 0;
//System.out.println(nums);
//System.out.println(nums.length());
for(int i = 0; i < nums.length(); i++){
//System.out.println('x'+nums.substring(i, i+1)+'x');
int len
= Integer.
parseInt(nums.
substring(i, i
+1).
toString()); message.append(convert2Char(mors.substring(ukazovatko, ukazovatko+len)));
ukazovatko += len;
}
return message.toString();
}
public static char convert2Char
(String character
){ if(character.equals(".-")) return 'A';
if(character.equals("-...")) return 'B';
if(character.equals("-.-.")) return 'C';
if(character.equals("-..")) return 'D';
if(character.equals(".")) return 'E';
if(character.equals("..-.")) return 'F';
if(character.equals("--.")) return 'G';
if(character.equals("....")) return 'H';
if(character.equals("..")) return 'I';
if(character.equals(".---")) return 'J';
if(character.equals("-.-")) return 'K';
if(character.equals(".-..")) return 'L';
if(character.equals("--")) return 'M';
if(character.equals("-.")) return 'N';
if(character.equals("---")) return 'O';
if(character.equals(".--.")) return 'P';
if(character.equals("--.-")) return 'Q';
if(character.equals(".-.")) return 'R';
if(character.equals("...")) return 'S';
if(character.equals("-")) return 'T';
if(character.equals("..-")) return 'U';
if(character.equals("...-")) return 'V';
if(character.equals(".--")) return 'W';
if(character.equals("-..-")) return 'X';
if(character.equals("-.--")) return 'Y';
if(character.equals("--..")) return 'Z';
if(character.equals("..--")) return '_';
if(character.equals(".-.-")) return ',';
if(character.equals("---.")) return '.';
return '?';
}
public static String convert2Mors
(char character
){ switch(character){
case 'A': return ".-";
case 'B': return "-...";
case 'C': return "-.-.";
case 'D': return "-..";
case 'E': return ".";
case 'F': return "..-.";
case 'G': return "--.";
case 'H': return "....";
case 'I': return "..";
case 'J': return ".---";
case 'K': return "-.-";
case 'L': return ".-..";
case 'M': return "--";
case 'N': return "-.";
case 'O': return "---";
case 'P': return ".--.";
case 'Q': return "--.-";
case 'R': return ".-.";
case 'S': return "...";
case 'T': return "-";
case 'U': return "..-";
case 'V': return "...-";
case 'W': return ".--";
case 'X': return "-..-";
case 'Y': return "-.--";
case 'Z': return "--..";
case '_': return "..--";
case ',': return ".-.-";
case '.': return "---.";
case '?': return "----";
}
return "";
}
public static String convert2Num
(char character
){ switch(character){
case 'A': return "2";
case 'B': return "4";
case 'C': return "4";
case 'D': return "3";
case 'E': return "1";
case 'F': return "4";
case 'G': return "3";
case 'H': return "4";
case 'I': return "2";
case 'J': return "4";
case 'K': return "3";
case 'L': return "4";
case 'M': return "2";
case 'N': return "2";
case 'O': return "3";
case 'P': return "4";
case 'Q': return "4";
case 'R': return "3";
case 'S': return "3";
case 'T': return "1";
case 'U': return "3";
case 'V': return "4";
case 'W': return "3";
case 'X': return "4";
case 'Y': return "4";
case 'Z': return "4";
case '_': return "4";
case ',': return "4";
case '.': return "4";
case '?': return "4";
}
return "";
}
/**
* @param args the command line arguments
*/
String message
= in.
readLine(); while(message != null){
System.
out.
println(convert
(message
)); message = in.readLine();
}
}
StringBuilder mors = new StringBuilder();
StringBuilder nums = new StringBuilder();
for(int i = 0; i < message.length(); i++){
mors.append(convert2Mors(message.charAt(i)));
nums.append(convert2Num(message.charAt(i)));
}
//System.out.println(mors.append(" ").append(nums));
nums = nums.reverse();
return convert2Str(mors.toString(), nums.toString());
}
}