From d18716495424864397398f8adb160dbb07b31cd3 Mon Sep 17 00:00:00 2001 From: David Ashby Date: Wed, 3 Dec 2025 22:25:13 -0500 Subject: [PATCH] add timings --- main.java.tmpl | 7 +++++++ src/Day01.java | 7 +++++++ src/Day02.java | 7 +++++++ src/Day03.java | 13 +++++++++---- 4 files changed, 30 insertions(+), 4 deletions(-) diff --git a/main.java.tmpl b/main.java.tmpl index 653b778..9d81eca 100644 --- a/main.java.tmpl +++ b/main.java.tmpl @@ -1,12 +1,19 @@ package src; import java.io.FileReader; +import java.time.Duration; +import java.time.Instant; import java.util.Scanner; public class Day00 { public static void main(String[] args) { + Instant start = Instant.now(); part1(); + Instant middle = Instant.now(); part2(); + Instant end = Instant.now(); + IO.println("part 1: " + Duration.between(start, middle).toMillis() + " ms"); + IO.println("part 2: " + Duration.between(middle, end).toMillis() + " ms"); } private static void part1() { diff --git a/src/Day01.java b/src/Day01.java index bd7f8ff..69d78ec 100644 --- a/src/Day01.java +++ b/src/Day01.java @@ -1,12 +1,19 @@ package src; import java.io.FileReader; +import java.time.Duration; +import java.time.Instant; import java.util.Scanner; public class Day01 { public static void main(String[] args) { + Instant start = Instant.now(); part1(); + Instant middle = Instant.now(); part2(); + Instant end = Instant.now(); + IO.println("part 1: " + Duration.between(start, middle).toMillis() + " ms"); + IO.println("part 2: " + Duration.between(middle, end).toMillis() + " ms"); } private static void part1() { diff --git a/src/Day02.java b/src/Day02.java index 35d666c..bc1b33c 100644 --- a/src/Day02.java +++ b/src/Day02.java @@ -1,12 +1,19 @@ package src; import java.io.FileReader; +import java.time.Duration; +import java.time.Instant; import java.util.Scanner; public class Day02 { public static void main(String[] args) { + Instant start = Instant.now(); part1(); + Instant middle = Instant.now(); part2(); + Instant end = Instant.now(); + IO.println("part 1: " + Duration.between(start, middle).toMillis() + " ms"); + IO.println("part 2: " + Duration.between(middle, end).toMillis() + " ms"); } private static void part1() { diff --git a/src/Day03.java b/src/Day03.java index e9fdec8..0a401d8 100644 --- a/src/Day03.java +++ b/src/Day03.java @@ -1,14 +1,21 @@ package src; import java.io.FileReader; +import java.time.Duration; +import java.time.Instant; import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Day03 { public static void main(String[] args) { + Instant start = Instant.now(); part1(); + Instant middle = Instant.now(); part2(); + Instant end = Instant.now(); + IO.println("part 1: " + Duration.between(start, middle).toMillis() + " ms"); + IO.println("part 2: " + Duration.between(middle, end).toMillis() + " ms"); } private static void part1() { @@ -48,8 +55,7 @@ public class Day03 { String raw = scanner.nextLine(); List bank = List.of(raw.split("")); // first, get the initial 12 batteries - List curr = new ArrayList<>(); - curr.addAll(bank.subList(0, 12)); + List curr = new ArrayList<>(bank.subList(0, 12)); for (int i = 12; i < bank.size(); i++) { curr.add(bank.get(i)); // add the next battery to the end of the list // find the smallest battery in the list that's ahead of a larger battery @@ -61,8 +67,7 @@ public class Day03 { } curr.remove(t1); } - String result = curr.stream().reduce("", String::concat); - sum += Long.parseLong(result); + sum += Long.parseLong(String.join("", curr)); } IO.println(sum); } catch (Exception e) {