Advertisement
GenuineSounds

NoFuck

Nov 27th, 2014
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.17 KB | None | 0 0
  1. package com.genuineminecraft.bf;
  2.  
  3. public class Test {
  4.  
  5.     public static void main(String[] args) {
  6.         String test = "++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.";
  7.         System.out.println("[INFO] " + test);
  8.         String min = minify(test);
  9.         System.out.println("[INFO] " + min);
  10.         String mag = magnify(min);
  11.         System.out.println("[INFO] " + mag);
  12.         System.out.println(test.equals(mag) ? "[SUCCESS] Test Passed" : "[ERROR] Test Failed");
  13.     }
  14.  
  15.     public static String minify(String in) {
  16.         String out = "";
  17.         int place = 0;
  18.         while (place < in.length()) {
  19.             char ch = in.charAt(place);
  20.             int count = 1;
  21.             while (++place < in.length() && in.charAt(place) == ch)
  22.                 count++;
  23.             out += (count > 1 ? "" + count : "") + ch;
  24.         }
  25.         return out.trim();
  26.     }
  27.  
  28.     public static String magnify(String in) {
  29.         String out = "";
  30.         String[] words = in.split("[0-9]+");
  31.         String[] numbers = in.split("[^0-9]+");
  32.         for (int sub = 1; sub < words.length; sub++) {
  33.             for (int count = 1; count < Integer.valueOf(numbers[sub - 1], 10); count++)
  34.                 out += words[sub].charAt(0);
  35.             out += words[sub];
  36.         }
  37.         return out.trim();
  38.     }
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement