Advertisement
Guest User

Untitled

a guest
Dec 7th, 2016
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.99 KB | None | 0 0
  1. import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;
  2.  
  3. import java.util.HashMap;
  4. import java.util.Map;
  5.  
  6. /**
  7. * Created by hackmajoris on 12/7/16.
  8. */
  9. public class Santa7 {
  10. public static void main(String[] args) {
  11.  
  12. String input = "ioxxoj[asdfgh]zxcvbn";
  13. int numberOfTLS = 0;
  14.  
  15. HashMap<Integer, Integer> bracketsIndexes = new HashMap<>();
  16. String segvenceWithoutBrackets = input;
  17. int openBracketIndex = 0;
  18. for (char c : input.toCharArray()) {
  19. if (c == '[') {
  20. int closedBrackedIndex = input.indexOf("]", openBracketIndex);
  21. bracketsIndexes.put(openBracketIndex + 1, closedBrackedIndex);
  22. }
  23. openBracketIndex++;
  24. }
  25.  
  26. boolean bracketsSegvenceIsOk = true;
  27.  
  28. for (Map.Entry<Integer, Integer> entry : bracketsIndexes.entrySet()) {
  29. String segvenceToCheck = input.substring(entry.getKey(), entry.getValue());
  30. segvenceWithoutBrackets = segvenceWithoutBrackets.replace("[" + segvenceToCheck + "]", "");
  31. if (checkSegvenceForTLS(segvenceToCheck)) {
  32. bracketsSegvenceIsOk = false;
  33. break;
  34. }
  35. }
  36. if (bracketsSegvenceIsOk) {
  37. if(checkSegvenceForTLS(segvenceWithoutBrackets)){
  38. numberOfTLS ++;
  39. }
  40. }
  41.  
  42. System.out.println(numberOfTLS);
  43. }
  44.  
  45. static boolean checkSegvenceFromBrackets(String s) {
  46. if (checkSegvenceForTLS(s)) {
  47. System.out.println("true");
  48. return true;
  49. }
  50. return false;
  51. }
  52.  
  53. static boolean checkSegvenceForTLS(String s) {
  54. for (int i = 0; i < s.length(); i++) {
  55. try {
  56. if (s.charAt(i) == s.charAt(i + 3) && s.charAt(i + 1) == s.charAt(i + 2) && s.charAt(i) != s.charAt(i + 2)) {
  57. return true;
  58. }
  59. } catch (Exception e) {
  60. return false;
  61. }
  62. }
  63. return false;
  64. }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement