fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. public static void main (String[] args) throws java.lang.Exception
  11. {
  12. System.out.println(p("!!!0x!!1"));
  13. System.out.println(p("1xaa1l0&0bx!a1&!0&1bb"));
  14. }
  15.  
  16. static String p(String s){
  17. int x,y;
  18. while((y=s.indexOf("b"))>=0){
  19. x=s.lastIndexOf("a",y);
  20. s=s.replaceAll(s.substring(x,y+1),p(s.substring(x+1,y)));
  21. }
  22. String t,a="1",b="0";
  23. while(s.indexOf("!")>=0){
  24. s=s.replaceAll("!0",a);
  25. s=s.replaceAll("!1",b);
  26. }
  27. while(s.length()>1){
  28. t=s.substring(0,3);
  29. if(t.charAt(1)=='l')
  30. s=s.replaceFirst(t,t.equals("0l0")?b:a);
  31. else if(t.charAt(1)=='&')
  32. s=s.replaceFirst(t,t.equals("1&1")?a:b);
  33. else
  34. s=s.replaceFirst(t,t.charAt(0)==t.charAt(2)?b:a);
  35. }
  36. return s;
  37. }
  38.  
  39. }
Success #stdin #stdout 0.1s 320512KB
stdin
Standard input is empty
stdout
0
1