Source code for submission s590

Fs.java

  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4. import java.util.Arrays;
  5. import java.util.HashMap;
  6. import java.util.HashSet;
  7.  
  8.  
  9. public class Fs {
  10.  
  11.  
  12.  
  13. public static void main(String[] args) throws IOException {
  14. String [] znacky = new String[96];
  15. znacky[65] = ".-";
  16. znacky[66] = "-...";
  17. znacky[67] = "-.-.";
  18. znacky[68] = "-..";
  19. znacky[69] = ".";
  20.  
  21. znacky[70] = "..-.";
  22. znacky[71] = "--.";
  23. znacky[72] = "....";
  24. znacky[73] = "..";
  25. znacky[74] = ".---";
  26.  
  27. znacky[75] = "-.-";
  28. znacky[76] = ".-..";
  29. znacky[77] = "--";
  30. znacky[78] = "-.";
  31. znacky[79] = "---";
  32.  
  33. znacky[80] = ".--.";
  34. znacky[81] = "--.-";
  35. znacky[82] = ".-.";
  36. znacky[83] = "...";
  37. znacky[84] = "-";
  38.  
  39. znacky[85] = "..-";
  40. znacky[86] = "...-";
  41. znacky[87] = ".--";
  42. znacky[88] = "-..-";
  43. znacky[89] = "-.--";
  44. znacky[90] = "--..";
  45.  
  46. znacky[95] = "..--";
  47. znacky[44] = ".-.-";
  48. znacky[46] = "---.";
  49. znacky[63] = "----";
  50.  
  51. HashMap<String, String> hm = new HashMap<String, String>();
  52. hm.put(".-", "A");
  53. hm.put("-...", "B");
  54. hm.put("-.-.", "C");
  55. hm.put("-..", "D");
  56. hm.put(".", "E");
  57.  
  58. hm.put("..-.", "F");
  59. hm.put("--.", "G");
  60. hm.put("....", "H");
  61. hm.put("..", "I");
  62. hm.put(".---", "J");
  63.  
  64. hm.put("-.-", "K");
  65. hm.put(".-..", "L");
  66. hm.put("--", "M");
  67. hm.put("-.", "N");
  68. hm.put("---", "O");
  69. hm.put(".--.", "P");
  70.  
  71. hm.put("--.-", "Q");
  72. hm.put(".-.", "R");
  73. hm.put("...", "S");
  74. hm.put("-", "T");
  75. hm.put("..-", "U");
  76.  
  77. hm.put("...-", "V");
  78. hm.put(".--", "W");
  79. hm.put("-..-", "X");
  80. hm.put("-.--", "Y");
  81. hm.put("--..", "Z");
  82.  
  83. hm.put("..--", "_");
  84. hm.put(".-.-", ",");
  85. hm.put("---.", ".");
  86. hm.put("----", "?");
  87.  
  88.  
  89.  
  90.  
  91. String line;
  92. StringBuilder mor;
  93. StringBuilder num;
  94. char z;
  95. String pis;
  96. String numRev;
  97. int beg;
  98. int shift;
  99. while((line = br.readLine()) != null){
  100. mor = new StringBuilder();
  101. num = new StringBuilder();
  102. for (int i = 0; i < line.length(); i++) {
  103. z = line.charAt(i);
  104. pis = znacky[(int)z];
  105. mor.append(pis);
  106. num.append(pis.length());
  107. }
  108.  
  109. numRev = num.reverse().toString();
  110. line = mor.toString();
  111. beg = 0;
  112.  
  113. for (int i = 0; i < numRev.length(); i++) {
  114. shift = Integer.parseInt("" + numRev.charAt(i));
  115. pis = line.substring(beg, beg+shift);
  116. beg += shift;
  117. System.out.print(hm.get(pis));
  118. }
  119. System.out.print("\n");
  120. }
  121. br.close();
  122.  
  123. }
  124. }
  125.