Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Day 07
- directories = {'/':0}
- current_dir = ['/']
- with open("Input_Day07.txt", "r") as f:
- for line in f.readlines():
- output = line.strip().split(" ")
- if output[0] == '$': #command
- if output[1] == 'cd':
- if output[2] == '..': # go back up one level
- current_dir.pop()
- elif output[2] == '/': # go to root
- current_dir = ['/']
- else:
- current_dir.append(output[2]) # go deeper
- elif output[0] == 'dir': # not a command - output is a directory
- directories["".join(current_dir) + output[1]] = 0
- else: # output is a file
- directories["".join(current_dir)] += int(output[0])
- for i in range(1, len(current_dir)):
- directories["".join(current_dir[:-i])] += int(output[0])
- # Part 01
- print(f"Part 01: {sum(_ for _ in directories.values() if _ <= 100000)}")
- print(f"Part 02: {min(_ for _ in directories.values() if _ >= directories['/'] - 40000000)}")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement