restructured + input for 2

This commit is contained in:
2025-12-02 22:26:38 -06:00
parent d5d903aa10
commit c4b24c9d31
4 changed files with 61 additions and 0 deletions

1
inputs/inputProblem2.txt Normal file
View File

@@ -0,0 +1 @@
9191906840-9191941337,7671-13230,2669677096-2669816099,2-12,229599-392092,48403409-48523311,96763-229430,1919163519-1919240770,74928-96389,638049-668065,34781-73835,736781-819688,831765539-831907263,5615884-5749554,14101091-14196519,7134383-7169141,413340-625418,849755289-849920418,7745350-7815119,16717-26267,4396832-4549887,87161544-87241541,4747436629-4747494891,335-549,867623-929630,53-77,1414-3089,940604-1043283,3444659-3500714,3629-7368,79-129,5488908-5597446,97922755-98097602,182-281,8336644992-8336729448,24-47,613-1077

View File

@@ -1,3 +1,5 @@
package src;
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;

View File

@@ -1,3 +1,5 @@
package src;
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;

56
src/Problem2.java Normal file
View File

@@ -0,0 +1,56 @@
package src;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class Problem2 {
public static void main(String[] args) {
String filePath = "inputs/inputProblem2.txt";
try {
String input = readFileAsString(filePath);
List<Long> numbers = parseRanges(input);
for (Long num : numbers) {
System.out.println(num);
}
} catch (IOException e) {
e.printStackTrace();
}
}
public static String readFileAsString(String filePath) throws IOException {
StringBuilder sb = new StringBuilder();
try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = reader.readLine()) != null) {
sb.append(line.trim()); // remove extra spaces/newlines
}
}
return sb.toString();
}
public static List<Long> parseRanges(String input) {
List<Long> result = new ArrayList<>();
String[] ranges = input.split(",");
for (String range : ranges) {
String[] parts = range.split("-");
if (parts.length != 2) {
throw new IllegalArgumentException("Invalid range: " + range);
}
long start = Long.parseLong(parts[0]);
long end = Long.parseLong(parts[1]);
result.add(start);
result.add(end);
}
return result;
}
}