Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Advent2019;
- import graph.SearchType;
- import graph.UGraph;
- import util.AdventOfCode;
- import java.util.List;
- public class Day6 extends AdventOfCode {
- UGraph<String> graph;
- public Day6(List<String> input) {
- super(input);
- }
- @Override
- public Object part1() {
- return graph.getVertices().stream()
- .mapToInt(x -> graph.search(x, "COM", SearchType.BFS).size() - 1)
- .sum();
- }
- @Override
- public Object part2() {
- return graph.search("YOU", "SAN", SearchType.BFS).size() - 3;
- }
- @Override
- public void parse() {
- graph = new UGraph<>();
- for (String each : input) {
- String parent = each.substring(0, 3);
- String child = each.substring(4);
- graph.addEdge(child, parent);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement