Dhaval2404

TechGig Reverse T9

Jun 8th, 2016
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.12 KB | None | 0 0
  1. import java.util.HashMap;
  2. import java.util.Map;
  3.  
  4. /**
  5.  *
  6.  * @author dhaval
  7.  */
  8. public class TechgigPuzzle {
  9.  
  10.     public static void main(String[] args) {
  11.         System.out.println(new TechgigPuzzle11().reverse_t9("44204420442"));
  12.         System.out.println(new TechgigPuzzle11().reverse_t9("2 22 2223 33 3334 44 4445 55 5556 66 666"));
  13.         System.out.println(new TechgigPuzzle11().reverse_t9("2 2 2 2 2 2 2 2 2"));
  14.     }
  15.  
  16.     String reverse_t9(String k) {
  17.         Map m = new HashMap<>();
  18.         m.put("01", ' ');
  19.         m.put("75", 's');
  20.         m.put("95", 'z');
  21.         int i=1, j, l, c;
  22.         c = 2;
  23.         for (; i < 24;c++) {
  24.             for (j = 1; j < 4;) {
  25.                 m.put(c + "" + j++, (char) (++i + 95));
  26.             }
  27.         }
  28.         String s = "";
  29.         l = k.length();
  30.         c = 1;
  31.         for (i = 0; i < l;) {
  32.             char p = k.charAt(i);
  33.             char n = l > ++i?k.charAt(i):0;
  34.             if (p == n)c++;
  35.             else if (c != 1 || p != ' ') {
  36.                 s += m.get(p + "" + c);
  37.                 c = 1;
  38.             }
  39.         }
  40.         return s;
  41.     }
  42.  
  43. }
Add Comment
Please, Sign In to add comment