SenseOfSecurity.java
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package senseofsecuritz;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.HashMap;
/**
*
* @author istenik3
*/
public class SenseOfSecurity {
static private HashMap
<String, Character
> fromMorse
= new HashMap
<String, Character
>();
fromMorse.put(s, c);
toMorse.put(c, s);
}
map('A', ".-");
map('B', "-...");
map('C', "-.-.");
map('D', "-..");
map('E', ".");
map('F', "..-.");
map('G', "--.");
map('H', "....");
map('I', "..");
map('J', ".---");
map('K', "-.-");
map('L', ".-..");
map('M', "--");
map('N', "-.");
map('O', "---");
map('P', ".--.");
map('Q', "--.-");
map('R', ".-.");
map('S', "...");
map('T', "-");
map('U', "..-");
map('V', "...-");
map('W', ".--");
map('X', "-..-");
map('Y', "-.--");
map('Z', "--..");
map('_', "..--");
map(',', ".-.-");
map('.', "---.");
map('?', "----");
while((line = reader.readLine()) != null) {
StringBuilder morse = new StringBuilder();
StringBuilder integers = new StringBuilder();
for(char c : line.toCharArray()) {
morse.append(toMorse.get(c));
integers.append(toMorse.get(c).length());
}
int offset = 0;
for(int i=integers.length()-1; i>=0; i--) {
int l
= Integer.
parseInt(""+integers.
charAt(i
)); String m
= morse.
substring(offset, offset
+l
); offset += l;
System.
out.
print(fromMorse.
get(m
)); }
}
}
}