mirror of
https://github.com/ZeusWPI/Advent-of-Code-Aggregator.git
synced 2024-11-22 06:51:10 +01:00
timo bombino
This commit is contained in:
parent
9f7eae8d51
commit
77ee7859a2
10 changed files with 2076 additions and 1 deletions
BIN
2021/SWAMP/2021/py/__pycache__/util.cpython-39.pyc
Normal file
BIN
2021/SWAMP/2021/py/__pycache__/util.cpython-39.pyc
Normal file
Binary file not shown.
2000
2021/SWAMP/2021/py/id1.txt
Normal file
2000
2021/SWAMP/2021/py/id1.txt
Normal file
File diff suppressed because it is too large
Load diff
10
2021/SWAMP/2021/py/main.py
Normal file
10
2021/SWAMP/2021/py/main.py
Normal file
|
@ -0,0 +1,10 @@
|
|||
from w1 import d1
|
||||
|
||||
|
||||
def main():
|
||||
print(d1.part1())
|
||||
print(d1.part2())
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
41
2021/SWAMP/2021/py/util.py
Normal file
41
2021/SWAMP/2021/py/util.py
Normal file
|
@ -0,0 +1,41 @@
|
|||
|
||||
def read(inputData):
|
||||
with open(inputData, "r") as infile:
|
||||
data = infile.readlines()
|
||||
return data
|
||||
|
||||
|
||||
def strArrToIntArray(inputData):
|
||||
return [int(value.replace("\n","").replace(" ","")) for value in inputData]
|
||||
|
||||
|
||||
def readAsIntArray(inputData):
|
||||
return strArrToIntArray(read(inputData))
|
||||
|
||||
def keepEven(inputData):
|
||||
return [d for d in inputData if d % 2 == 0]
|
||||
|
||||
def keepUneven(inputData):
|
||||
return [d for d in inputData if d % 2 == 1]
|
||||
|
||||
def keepIfContaint(inputData, toContain):
|
||||
return [d for d in inputData if toContain in d]
|
||||
|
||||
def removeIfContains(inputData, toContain):
|
||||
return [d for d in inputData if not toContain in d]
|
||||
|
||||
def keepIfDevisor(inputData, toDiv):
|
||||
return [d for d in inputData if toDiv % d == 0]
|
||||
|
||||
def keepIfDivisibleBy(inputData, toDiv):
|
||||
return [d for d in inputData if d % toDiv == 0]
|
||||
|
||||
def get_primelist(lower, upper):
|
||||
result = []
|
||||
for cp in range ( lower, upper + 1 ):
|
||||
for i in range ( lower, cp ):
|
||||
if ( cp % i == 0 ):
|
||||
break
|
||||
else:
|
||||
result.append(cp)
|
||||
return result
|
0
2021/SWAMP/2021/py/w1/__init__.py
Normal file
0
2021/SWAMP/2021/py/w1/__init__.py
Normal file
BIN
2021/SWAMP/2021/py/w1/__pycache__/__init__.cpython-39.pyc
Normal file
BIN
2021/SWAMP/2021/py/w1/__pycache__/__init__.cpython-39.pyc
Normal file
Binary file not shown.
BIN
2021/SWAMP/2021/py/w1/__pycache__/d1.cpython-39.pyc
Normal file
BIN
2021/SWAMP/2021/py/w1/__pycache__/d1.cpython-39.pyc
Normal file
Binary file not shown.
24
2021/SWAMP/2021/py/w1/d1.py
Normal file
24
2021/SWAMP/2021/py/w1/d1.py
Normal file
|
@ -0,0 +1,24 @@
|
|||
import util
|
||||
|
||||
def count_increments(depths, slice_length):
|
||||
increments = 0
|
||||
slice_start = 0
|
||||
slice_end = slice_start + slice_length
|
||||
prev = depths[slice_start:slice_end]
|
||||
for i in range(len(depths)):
|
||||
idx = i+1
|
||||
slice = depths[idx:idx+slice_length]
|
||||
if (sum(slice) > sum(prev) and len(slice) == slice_length):
|
||||
increments += 1
|
||||
prev = slice
|
||||
return increments
|
||||
|
||||
|
||||
def part1():
|
||||
depths = util.readAsIntArray("id1.txt")
|
||||
return count_increments(depths, 1)
|
||||
|
||||
def part2():
|
||||
depths = util.readAsIntArray("id1.txt")
|
||||
return count_increments(depths,3)
|
||||
|
1
2021/SWAMP/README.md
Normal file
1
2021/SWAMP/README.md
Normal file
|
@ -0,0 +1 @@
|
|||
# AoC
|
1
SWAMP
1
SWAMP
|
@ -1 +0,0 @@
|
|||
Subproject commit 16cd1dd8eb8a7c7e39a5ad8780e8c6a9af7c00c0
|
Loading…
Reference in a new issue