Since everyone wanted me to use lists for D1, here you go
Also, zombie, your PR kinda sucked so I deleted it and made my own
This commit is contained in:
parent
b76699fca6
commit
ae592b71af
3 changed files with 89 additions and 11 deletions
22
day1/day1-alt.py
Normal file
22
day1/day1-alt.py
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
if __name__ == "__main__":
|
||||||
|
elves = []
|
||||||
|
|
||||||
|
with open('input', 'r') as f:
|
||||||
|
sum_ = 0
|
||||||
|
for line in f:
|
||||||
|
if line.strip() == '':
|
||||||
|
elves.append(sum_)
|
||||||
|
sum_ = 0
|
||||||
|
else:
|
||||||
|
sum_ += int(line.strip())
|
||||||
|
|
||||||
|
elves.append(sum_)
|
||||||
|
|
||||||
|
elves.sort(reverse=True)
|
||||||
|
|
||||||
|
largest = elves[0]
|
||||||
|
print(f'Max Value: {largest}')
|
||||||
|
|
||||||
|
top3 = elves[0] + elves[1] + elves[2]
|
||||||
|
|
||||||
|
print(f'Top 3: {top3}')
|
23
day1/day1.py
23
day1/day1.py
|
@ -1,23 +1,24 @@
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
elves = {}
|
elves = []
|
||||||
|
|
||||||
with open('input', 'r') as f:
|
with open('input', 'r') as f:
|
||||||
elf = 0
|
sum_ = 0
|
||||||
elves[0] = 0
|
|
||||||
for line in f:
|
for line in f:
|
||||||
if line.strip() == '':
|
if line.strip() == '':
|
||||||
elf += 1
|
elves.append(sum_)
|
||||||
elves[elf] = 0
|
sum_ = 0
|
||||||
else:
|
else:
|
||||||
elves[elf] += int(line.strip())
|
sum_ += int(line.strip())
|
||||||
|
|
||||||
largest = max(elves, key=elves.get)
|
elves.append(sum_)
|
||||||
print(f'Index: {largest}\nValue: {elves[largest]}')
|
|
||||||
|
largest = max(elves)
|
||||||
|
print(f'Max Value: {largest}')
|
||||||
|
|
||||||
top3 = 0
|
top3 = 0
|
||||||
for i in range(3):
|
for i in range(3):
|
||||||
largest = max(elves, key=elves.get)
|
largest = max(elves)
|
||||||
top3 += elves[largest]
|
top3 += largest
|
||||||
del elves[largest]
|
elves.remove(largest)
|
||||||
|
|
||||||
print(f'Top 3: {top3}')
|
print(f'Top 3: {top3}')
|
||||||
|
|
55
day1/input2
Normal file
55
day1/input2
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
5324
|
||||||
|
5176
|
||||||
|
2197
|
||||||
|
2701
|
||||||
|
6185
|
||||||
|
3901
|
||||||
|
5392
|
||||||
|
2065
|
||||||
|
6467
|
||||||
|
6085
|
||||||
|
5062
|
||||||
|
1841
|
||||||
|
1197
|
||||||
|
1318
|
||||||
|
|
||||||
|
4901
|
||||||
|
3443
|
||||||
|
1403
|
||||||
|
5570
|
||||||
|
4336
|
||||||
|
5672
|
||||||
|
2532
|
||||||
|
5627
|
||||||
|
6038
|
||||||
|
1099
|
||||||
|
4305
|
||||||
|
2317
|
||||||
|
1382
|
||||||
|
3226
|
||||||
|
4427
|
||||||
|
|
||||||
|
2612
|
||||||
|
15638
|
||||||
|
|
||||||
|
4118
|
||||||
|
4687
|
||||||
|
2243
|
||||||
|
3532
|
||||||
|
2089
|
||||||
|
3937
|
||||||
|
1146
|
||||||
|
5069
|
||||||
|
5728
|
||||||
|
2962
|
||||||
|
3099
|
||||||
|
5882
|
||||||
|
5448
|
||||||
|
6064
|
||||||
|
|
||||||
|
2642
|
||||||
|
7996
|
||||||
|
5334
|
||||||
|
10384
|
||||||
|
1106
|
||||||
|
2742
|
Reference in a new issue