Matching Java - Posted on July Wed 22nd 6:10 PM (Never Expires) - Format: java
  1.         public static void main(String[] args) {
  2. //              String input = "})[]((([(]))(){";
  3. //              String input = "(}){}";
  4.                 String input = "{{{{{{{";
  5.                 Set<Character> open = new HashSet<Character>(Arrays.asList('{', '[', '('));
  6.                 ArrayList<Character> looked = new ArrayList<Character>();
  7.                 int count = 0;
  8.                 for (int i = 0; i < input.length(); i++) {
  9.                         char e = input.charAt(i);
  10.                         if (open.contains(e)) {
  11.                                 looked.add(e);
  12.                         } else {
  13.                                 count += findMatch(e, looked);
  14.                         }
  15.                 }
  16.                 System.out.println(count);
  17.         }
  18.  
  19.         public static int findMatch(char e, ArrayList<Character> looked) {
  20.                 if (looked.size() > 0) {
  21.                         char op = looked.remove(looked.size() - 1);
  22.                         if ((e == '}' && op == '{') || (e == ')' && op == '(') || (e == ']' && op == '[')) {
  23.                                 return 1;
  24.                         }
  25.                         int count = findMatch(e, looked);
  26.                         if (count > 0) {
  27.                                 return count;
  28.                         } else {
  29.                                 looked.add(op);
  30.                                 return 0;
  31.                         }
  32.                 }
  33.                 return 0;
  34.         }

New Paste

Paste Options

Recent Pastes

8 days ago

EARN PAYPAL IN A

10 days ago

QUICK CASH VIA

10 days ago

ATM cloned cards

10 days ago

ATM cloned cards

10 days ago

ATM cloned cards

10 days ago

ATM cloned cards

16 days ago

A MONEY MAKING B

16 days ago

A MONEY MAKING B

16 days ago

A MONEY MAKING B

16 days ago

A MONEY MAKING B