package englishmorsecode ;
import java.util.HashMap ;
import java.util.Map ;
public class EnglishMorseCode {
{ "A" , ".-" } , { "B" , "-..." } , { "C" , "-.-." } , { "D" , "-.." } , { "E" , "." } , { "F" , "..-." } , { "G" , "--." } , { "H" , "...." } , { "I" , ".." } , { "J" , ".---" } ,
{ "K" , "-.-" } , { "L" , ".-.." } , { "M" , "--" } , { "N" , "-." } , { "O" , "---" } , { "P" , ".--." } , { "Q" , "--.-" } , { "R" , ".-." } , { "S" , "..." } , { "T" , "-" } ,
{ "U" , "..-" } , { "V" , "...-" } , { "W" , ".--" } , { "X" , "-..-" } , { "y" , "-.--" } , { "z" , "--.." } , { "1" , ".----" } , { "2" , "..---" } , { "3" , "...--" } , { "4" , "....-" } ,
{ "5" , "....." } , { "6" , "-...." } , { "7" , "--..." } , { "8" , "---.." } , { "9" , "----." } , { "0" , "-----" } , { " " , "|" }
} ;
private Map
< String , String
> enToMorse
; private Map
< String , String
> morseToEn
;
/**
* @param args the command line arguments
*/
public static void main
( String [ ] args
) {
Map
< String , String
> morse
= new getMorseToEn
( ) ;
}
private Map
< String , String
> getMorseToEnMap
( ) { if ( morseToEn == null ) {
morseToEn
= new HashMap
< String , String
> ( ) ; for ( String [ ] x
: morseArray
) { morseToEn.put ( x[ 1 ] , x[ 0 ] ) ;
}
}
return morseToEn;
}
}
cGFja2FnZSBlbmdsaXNobW9yc2Vjb2RlOwoKaW1wb3J0IGphdmEudXRpbC5IYXNoTWFwOwppbXBvcnQgamF2YS51dGlsLk1hcDsKCnB1YmxpYyBjbGFzcyBFbmdsaXNoTW9yc2VDb2RlIHsKCiAgICBwcml2YXRlIFN0cmluZ1tdW10gbW9yc2VBcnJheSA9IG5ldyBTdHJpbmdbXVtdewogICAgICAgIHsiQSIsICIuLSJ9LCB7IkIiLCAiLS4uLiJ9LCB7IkMiLCAiLS4tLiJ9LCB7IkQiLCAiLS4uIn0sIHsiRSIsICIuIn0sIHsiRiIsICIuLi0uIn0sIHsiRyIsICItLS4ifSwgeyJIIiwgIi4uLi4ifSwgeyJJIiwgIi4uIn0sIHsiSiIsICIuLS0tIn0sCiAgICAgICAgeyJLIiwgIi0uLSJ9LCB7IkwiLCAiLi0uLiJ9LCB7Ik0iLCAiLS0ifSwgeyJOIiwgIi0uIn0sIHsiTyIsICItLS0ifSwgeyJQIiwgIi4tLS4ifSwgeyJRIiwgIi0tLi0ifSwgeyJSIiwgIi4tLiJ9LCB7IlMiLCAiLi4uIn0sIHsiVCIsICItIn0sCiAgICAgICAgeyJVIiwgIi4uLSJ9LCB7IlYiLCAiLi4uLSJ9LCB7IlciLCAiLi0tIn0sIHsiWCIsICItLi4tIn0sIHsieSIsICItLi0tIn0sIHsieiIsICItLS4uIn0sIHsiMSIsICIuLS0tLSJ9LCB7IjIiLCAiLi4tLS0ifSwgeyIzIiwgIi4uLi0tIn0sIHsiNCIsICIuLi4uLSJ9LAogICAgICAgIHsiNSIsICIuLi4uLiJ9LCB7IjYiLCAiLS4uLi4ifSwgeyI3IiwgIi0tLi4uIn0sIHsiOCIsICItLS0uLiJ9LCB7IjkiLCAiLS0tLS4ifSwgeyIwIiwgIi0tLS0tIn0sIHsiICIsICJ8In0KICAgIH07CgogICAgcHJpdmF0ZSBNYXA8U3RyaW5nLCBTdHJpbmc+IGVuVG9Nb3JzZTsKICAgIHByaXZhdGUgTWFwPFN0cmluZywgU3RyaW5nPiBtb3JzZVRvRW47CgogICAgLyoqCiAgICAgKiBAcGFyYW0gYXJncyB0aGUgY29tbWFuZCBsaW5lIGFyZ3VtZW50cwogICAgICovCiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CiAgICAgICAgCiAgICAgICAgTWFwPFN0cmluZywgU3RyaW5nPiBtb3JzZSA9IG5ldyBnZXRNb3JzZVRvRW4oKTsKICAgICAgICBTdHJpbmcgeCA9IG1vcnNlLmdldCgiLi4uIik7CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbih4KTsKCiAgICB9CgogICAgcHJpdmF0ZSBNYXA8U3RyaW5nLCBTdHJpbmc+IGdldE1vcnNlVG9Fbk1hcCgpIHsKICAgICAgICBpZiAobW9yc2VUb0VuID09IG51bGwpIHsKICAgICAgICAgICAgbW9yc2VUb0VuID0gbmV3IEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+KCk7CiAgICAgICAgICAgIGZvciAoU3RyaW5nW10geCA6IG1vcnNlQXJyYXkpIHsKICAgICAgICAgICAgICAgIG1vcnNlVG9Fbi5wdXQoeFsxXSwgeFswXSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1vcnNlVG9FbjsKICAgIH0KfQo=