Advertisement
Guest User

AOC2024_day3_Java

a guest
Dec 3rd, 2024
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.14 KB | Source Code | 0 0
  1.     private static void part1(BufferedReader reader) {
  2.         var regex = Pattern.compile("(?<muls>mul\\((?<first>\\d+),(?<second>\\d+)\\))");
  3.         var input = reader.lines().collect(Collectors.joining());
  4.  
  5.         var matcher = regex.matcher(input);
  6.         var sum = 0L;
  7.         while (matcher.find()) {
  8.             var first = Long.parseLong(matcher.group("first"));
  9.             var second = Long.parseLong(matcher.group("second"));
  10.             sum += first * second;
  11.         }
  12.         System.out.println(sum);
  13.     }
  14.  
  15.     private static void part2(BufferedReader reader) {
  16.         var regex = Pattern.compile("(?<muls>mul\\((?<first>\\d+),(?<second>\\d+)\\))");
  17.         var input = reader.lines().collect(Collectors.joining());
  18.         var inputCleared = input.replaceAll("don't\\(\\).*?do\\(\\)|don't\\(\\).*$", "");
  19.  
  20.         var matcher = regex.matcher(inputCleared);
  21.         var sum = 0L;
  22.         while (matcher.find()) {
  23.             var first = Long.parseLong(matcher.group("first"));
  24.             var second = Long.parseLong(matcher.group("second"));
  25.             sum += first * second;
  26.         }
  27.         System.out.println(sum);
  28.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement