Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var input = File.ReadAllLines("AdventOfCode/2022/07/Test.txt");
- var dir = new List<string>();
- var files = new List<(string Dir, string Name, int Size)>();
- foreach (var l in input)
- {
- if (l == "$ cd ..")
- dir.Remove(dir.Last());
- if (l.StartsWith("$ cd") && l.Split(" ")[2] != "..")
- dir.Add(l.Split(" ")[2]);
- if (!l.StartsWith("$") && !l.StartsWith("dir"))
- files.Add((Dir: String.Join("/", dir), Name: l.Split(" ")[1], Size: int.Parse(l.Split(" ")[0])));
- }
- var folderSizes = files.Select(f => f.Dir).Distinct()
- .Select(dir => (Name: dir, Size: files.Where(f => f.Dir.StartsWith(dir)).Sum(f => f.Size)));
- var result1 = folderSizes.Where(fs => fs.Size < 100000).Sum(fs => fs.Size);
- var result2 = 0;
- Console.WriteLine($"Part 1: {result1}, Part 2: {result2}");
Advertisement
Add Comment
Please, Sign In to add comment