init
This commit is contained in:
BIN
2015/__pycache__/helpingFunctions.cpython-311.pyc
Normal file
BIN
2015/__pycache__/helpingFunctions.cpython-311.pyc
Normal file
Binary file not shown.
47
2015/day00.py
Normal file
47
2015/day00.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day00/input.day00
Normal file
0
2015/day00/input.day00
Normal file
0
2015/day00/sample.day00
Normal file
0
2015/day00/sample.day00
Normal file
57
2015/day01.py
Normal file
57
2015/day01.py
Normal file
@@ -0,0 +1,57 @@
|
||||
# AOC Script Year 2015 Day 01
|
||||
# Date : 2023.12.20
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
for dataRow in data:
|
||||
for dataElem in dataRow:
|
||||
if dataElem == '(': gameScoreA +=1
|
||||
if dataElem == ')': gameScoreA -=1
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
floor=0
|
||||
for dataRow in data:
|
||||
for dataElem in dataRow:
|
||||
gameScoreB+=1
|
||||
if dataElem == '(': floor +=1
|
||||
if dataElem == ')': floor -=1
|
||||
if floor==-1: break
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
1
2015/day01/input.day01
Normal file
1
2015/day01/input.day01
Normal file
File diff suppressed because one or more lines are too long
0
2015/day01/sample.day01
Normal file
0
2015/day01/sample.day01
Normal file
55
2015/day02.py
Normal file
55
2015/day02.py
Normal file
@@ -0,0 +1,55 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
for dataRow in data:
|
||||
sides=[int(side) for side in dataRow.split('x')]
|
||||
sides.sort()
|
||||
gameScoreA += (2*sides[0]*sides[1])+(2*sides[0]*sides[2])+(2*sides[1]*sides[2])+(sides[0]*sides[1])
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
for dataRow in data:
|
||||
sides=[int(side) for side in dataRow.split('x')]
|
||||
sides.sort()
|
||||
gameScoreB += (sides[0]*2)+(sides[1]*2) + (sides[0]*sides[1]*sides[2])
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Year '+ aocYear +' / Day '+aocDay+': Task 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Year '+ aocYear +' / Day '+aocDay+': Task 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
1000
2015/day02/input.day02
Normal file
1000
2015/day02/input.day02
Normal file
File diff suppressed because it is too large
Load Diff
0
2015/day02/sample.day02
Normal file
0
2015/day02/sample.day02
Normal file
81
2015/day03.py
Normal file
81
2015/day03.py
Normal file
@@ -0,0 +1,81 @@
|
||||
# AOC Day Script Day 03
|
||||
# Date : 2024.11.09
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
|
||||
def movePoint(actualPoint,movement):
|
||||
x0,y0 = actualPoint
|
||||
x1,y1 = movement
|
||||
return ((x0+x1,y0+y1))
|
||||
|
||||
def visitHouses(actualPoint,movements):
|
||||
visitedHouses=[]
|
||||
visitedHouses.append(actualPoint)
|
||||
for move in movements:
|
||||
if move == '^': actualPoint = movePoint(actualPoint,(0,1))
|
||||
elif move == 'v': actualPoint = movePoint(actualPoint,(0,-1))
|
||||
elif move == '>': actualPoint = movePoint(actualPoint,(1,0))
|
||||
elif move == '<': actualPoint = movePoint(actualPoint,(-1,0))
|
||||
visitedHouses.append(actualPoint)
|
||||
return visitedHouses
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
for dataRow in data:
|
||||
visitedHouses=visitHouses((0,0),dataRow)
|
||||
gameScoreA=len(list(set(visitedHouses)))
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
for dataRow in data:
|
||||
rowNr=0
|
||||
santaMoves=[]
|
||||
roboMoves=[]
|
||||
for dataElem in dataRow:
|
||||
rowNr += 1
|
||||
if ( rowNr % 2 == 0 ):
|
||||
roboMoves.append(dataElem)
|
||||
else:
|
||||
santaMoves.append(dataElem)
|
||||
santaVisited=visitHouses((0,0),santaMoves)
|
||||
roboVisited=visitHouses((0,0),roboMoves)
|
||||
visitedHouses = santaVisited+roboVisited
|
||||
gameScoreB=len(list(set(visitedHouses)))
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
1
2015/day03/input.day03
Normal file
1
2015/day03/input.day03
Normal file
File diff suppressed because one or more lines are too long
1
2015/day03/sample.day03
Normal file
1
2015/day03/sample.day03
Normal file
@@ -0,0 +1 @@
|
||||
^v^v^v^v^v
|
||||
68
2015/day04.py
Normal file
68
2015/day04.py
Normal file
@@ -0,0 +1,68 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from hashlib import md5
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
for inputData in data:
|
||||
inputValue=0
|
||||
while True:
|
||||
inputValue+=1
|
||||
data2Hash = inputData+str(inputValue)
|
||||
hashValue = md5 (data2Hash.encode())
|
||||
hashValue = hashValue.hexdigest()[:5]
|
||||
if (hashValue == '00000'):
|
||||
gameScoreA=inputValue
|
||||
break
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
for inputData in data:
|
||||
inputValue=0
|
||||
while True:
|
||||
inputValue+=1
|
||||
data2Hash = inputData+str(inputValue)
|
||||
hashValue = md5 (data2Hash.encode())
|
||||
hashValue = hashValue.hexdigest()[:6]
|
||||
if (hashValue == '000000'):
|
||||
gameScoreB=inputValue
|
||||
break
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
1
2015/day04/input.day04
Normal file
1
2015/day04/input.day04
Normal file
@@ -0,0 +1 @@
|
||||
iwrupvqb
|
||||
1
2015/day04/sample.day04
Normal file
1
2015/day04/sample.day04
Normal file
@@ -0,0 +1 @@
|
||||
abcdef
|
||||
118
2015/day05.py
Normal file
118
2015/day05.py
Normal file
@@ -0,0 +1,118 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def checkVocals(inputData):
|
||||
retValue = False
|
||||
foundVocal=0
|
||||
for i in range(0,len(inputData)):
|
||||
letter = inputData[i].lower()
|
||||
if letter == 'a' or letter == 'e' or letter == 'i' or letter == 'o' or letter == 'u':
|
||||
foundVocal+=1
|
||||
if foundVocal > 2:
|
||||
retValue = True
|
||||
break
|
||||
return retValue
|
||||
|
||||
def twiceInRow(inputData):
|
||||
retValue=False
|
||||
for i in range(0,len(inputData)-1):
|
||||
if inputData[i] == inputData[i+1]:
|
||||
retValue = True
|
||||
break
|
||||
return retValue
|
||||
|
||||
def notContain(inputData):
|
||||
retValue=False
|
||||
for i in range(0,len(inputData)-1):
|
||||
checkValue = inputData[i].lower()+inputData[i+1].lower()
|
||||
if checkValue == 'ab' or checkValue == 'cd' or checkValue == 'pq' or checkValue == 'xy':
|
||||
retValue = True
|
||||
break
|
||||
return retValue
|
||||
|
||||
def doubleTwice(inputData):
|
||||
retValue=False
|
||||
for i in range(0,len(inputData)-1):
|
||||
doubleValue = inputData[i].lower()+inputData[i+1].lower()
|
||||
for j in range(i+2,len(inputData)-1):
|
||||
twiceValue = inputData[j].lower()+inputData[j+1].lower()
|
||||
if doubleValue == twiceValue:
|
||||
retValue = True
|
||||
break
|
||||
if retValue == True:
|
||||
break
|
||||
return retValue
|
||||
|
||||
def twiceInBetween(inputData):
|
||||
retValue=False
|
||||
for i in range(0,len(inputData)-2):
|
||||
allThree=inputData[i]+inputData[i+1]+inputData[i+2]
|
||||
if inputData[i] == inputData[i+2]:
|
||||
retValue = True
|
||||
break
|
||||
return retValue
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
niceValue = 0
|
||||
for dataRow in data:
|
||||
dataElems = list(dataRow)
|
||||
is3Vocals = checkVocals(dataElems)
|
||||
if is3Vocals == True:
|
||||
isTwiceInRow = twiceInRow(dataElems)
|
||||
if isTwiceInRow == True:
|
||||
isNotContain = notContain(dataElems)
|
||||
if isNotContain == False :
|
||||
niceValue += 1
|
||||
gameScoreA = niceValue
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
niceValue = 0
|
||||
for dataRow in data:
|
||||
dataElems = list(dataRow)
|
||||
isDoubleTwice = doubleTwice(dataElems)
|
||||
if isDoubleTwice == True:
|
||||
isTwiceInBetween = twiceInBetween(dataElems)
|
||||
if isTwiceInBetween == True:
|
||||
niceValue += 1
|
||||
gameScoreB = niceValue
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
1000
2015/day05/input.day05
Normal file
1000
2015/day05/input.day05
Normal file
File diff suppressed because it is too large
Load Diff
4
2015/day05/sample.day05
Normal file
4
2015/day05/sample.day05
Normal file
@@ -0,0 +1,4 @@
|
||||
qjhvhtzxzqqjkmpb
|
||||
xxyxx
|
||||
uurcxstgmygtbstg
|
||||
ieodomkazucvgmuy
|
||||
87
2015/day06.py
Normal file
87
2015/day06.py
Normal file
@@ -0,0 +1,87 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def turnLight(data,mode: int):
|
||||
score=0
|
||||
dataCommands = []
|
||||
board = {}
|
||||
|
||||
for dataRow in data:
|
||||
dataCommands.append(dataRow.replace('turn ','').replace(' through ',' ').replace(' ',','))
|
||||
for dataCommand in dataCommands:
|
||||
command,startCoordX,startCoordY,endCoordX,endCoordY = dataCommand.split(',')
|
||||
for i in range(int(startCoordX),int(endCoordX)+1):
|
||||
for j in range(int(startCoordY), int(endCoordY)+1):
|
||||
coordXY = (i,j)
|
||||
if mode == 0:
|
||||
if command == 'on':
|
||||
board[coordXY]=1
|
||||
elif command == 'off':
|
||||
board[coordXY]=0
|
||||
elif command == 'toggle':
|
||||
try:
|
||||
board[coordXY]=board[coordXY] ^ 1
|
||||
except:
|
||||
board[coordXY] = 1
|
||||
else:
|
||||
if command == 'on':
|
||||
try:
|
||||
board[coordXY]+=1
|
||||
except:
|
||||
board[coordXY]=1
|
||||
elif command == 'off':
|
||||
try:
|
||||
if board[coordXY] > 0 : board[coordXY]-=1
|
||||
except:
|
||||
board[coordXY]=0
|
||||
elif command == 'toggle':
|
||||
try:
|
||||
board[coordXY]+=2
|
||||
except:
|
||||
board[coordXY]=2
|
||||
for key,scoreValue in board.items():
|
||||
score += scoreValue
|
||||
return score
|
||||
|
||||
def taskA (data) -> int:
|
||||
return turnLight(data,0)
|
||||
|
||||
def taskB (data) -> int:
|
||||
return turnLight(data,1)
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
300
2015/day06/input.day06
Normal file
300
2015/day06/input.day06
Normal file
@@ -0,0 +1,300 @@
|
||||
turn on 887,9 through 959,629
|
||||
turn on 454,398 through 844,448
|
||||
turn off 539,243 through 559,965
|
||||
turn off 370,819 through 676,868
|
||||
turn off 145,40 through 370,997
|
||||
turn off 301,3 through 808,453
|
||||
turn on 351,678 through 951,908
|
||||
toggle 720,196 through 897,994
|
||||
toggle 831,394 through 904,860
|
||||
toggle 753,664 through 970,926
|
||||
turn off 150,300 through 213,740
|
||||
turn on 141,242 through 932,871
|
||||
toggle 294,259 through 474,326
|
||||
toggle 678,333 through 752,957
|
||||
toggle 393,804 through 510,976
|
||||
turn off 6,964 through 411,976
|
||||
turn off 33,572 through 978,590
|
||||
turn on 579,693 through 650,978
|
||||
turn on 150,20 through 652,719
|
||||
turn off 782,143 through 808,802
|
||||
turn off 240,377 through 761,468
|
||||
turn off 899,828 through 958,967
|
||||
turn on 613,565 through 952,659
|
||||
turn on 295,36 through 964,978
|
||||
toggle 846,296 through 969,528
|
||||
turn off 211,254 through 529,491
|
||||
turn off 231,594 through 406,794
|
||||
turn off 169,791 through 758,942
|
||||
turn on 955,440 through 980,477
|
||||
toggle 944,498 through 995,928
|
||||
turn on 519,391 through 605,718
|
||||
toggle 521,303 through 617,366
|
||||
turn off 524,349 through 694,791
|
||||
toggle 391,87 through 499,792
|
||||
toggle 562,527 through 668,935
|
||||
turn off 68,358 through 857,453
|
||||
toggle 815,811 through 889,828
|
||||
turn off 666,61 through 768,87
|
||||
turn on 27,501 through 921,952
|
||||
turn on 953,102 through 983,471
|
||||
turn on 277,552 through 451,723
|
||||
turn off 64,253 through 655,960
|
||||
turn on 47,485 through 734,977
|
||||
turn off 59,119 through 699,734
|
||||
toggle 407,898 through 493,955
|
||||
toggle 912,966 through 949,991
|
||||
turn on 479,990 through 895,990
|
||||
toggle 390,589 through 869,766
|
||||
toggle 593,903 through 926,943
|
||||
toggle 358,439 through 870,528
|
||||
turn off 649,410 through 652,875
|
||||
turn on 629,834 through 712,895
|
||||
toggle 254,555 through 770,901
|
||||
toggle 641,832 through 947,850
|
||||
turn on 268,448 through 743,777
|
||||
turn off 512,123 through 625,874
|
||||
turn off 498,262 through 930,811
|
||||
turn off 835,158 through 886,242
|
||||
toggle 546,310 through 607,773
|
||||
turn on 501,505 through 896,909
|
||||
turn off 666,796 through 817,924
|
||||
toggle 987,789 through 993,809
|
||||
toggle 745,8 through 860,693
|
||||
toggle 181,983 through 731,988
|
||||
turn on 826,174 through 924,883
|
||||
turn on 239,228 through 843,993
|
||||
turn on 205,613 through 891,667
|
||||
toggle 867,873 through 984,896
|
||||
turn on 628,251 through 677,681
|
||||
toggle 276,956 through 631,964
|
||||
turn on 78,358 through 974,713
|
||||
turn on 521,360 through 773,597
|
||||
turn off 963,52 through 979,502
|
||||
turn on 117,151 through 934,622
|
||||
toggle 237,91 through 528,164
|
||||
turn on 944,269 through 975,453
|
||||
toggle 979,460 through 988,964
|
||||
turn off 440,254 through 681,507
|
||||
toggle 347,100 through 896,785
|
||||
turn off 329,592 through 369,985
|
||||
turn on 931,960 through 979,985
|
||||
toggle 703,3 through 776,36
|
||||
toggle 798,120 through 908,550
|
||||
turn off 186,605 through 914,709
|
||||
turn off 921,725 through 979,956
|
||||
toggle 167,34 through 735,249
|
||||
turn on 726,781 through 987,936
|
||||
toggle 720,336 through 847,756
|
||||
turn on 171,630 through 656,769
|
||||
turn off 417,276 through 751,500
|
||||
toggle 559,485 through 584,534
|
||||
turn on 568,629 through 690,873
|
||||
toggle 248,712 through 277,988
|
||||
toggle 345,594 through 812,723
|
||||
turn off 800,108 through 834,618
|
||||
turn off 967,439 through 986,869
|
||||
turn on 842,209 through 955,529
|
||||
turn on 132,653 through 357,696
|
||||
turn on 817,38 through 973,662
|
||||
turn off 569,816 through 721,861
|
||||
turn on 568,429 through 945,724
|
||||
turn on 77,458 through 844,685
|
||||
turn off 138,78 through 498,851
|
||||
turn on 136,21 through 252,986
|
||||
turn off 2,460 through 863,472
|
||||
turn on 172,81 through 839,332
|
||||
turn on 123,216 through 703,384
|
||||
turn off 879,644 through 944,887
|
||||
toggle 227,491 through 504,793
|
||||
toggle 580,418 through 741,479
|
||||
toggle 65,276 through 414,299
|
||||
toggle 482,486 through 838,931
|
||||
turn off 557,768 through 950,927
|
||||
turn off 615,617 through 955,864
|
||||
turn on 859,886 through 923,919
|
||||
turn on 391,330 through 499,971
|
||||
toggle 521,835 through 613,847
|
||||
turn on 822,787 through 989,847
|
||||
turn on 192,142 through 357,846
|
||||
turn off 564,945 through 985,945
|
||||
turn off 479,361 through 703,799
|
||||
toggle 56,481 through 489,978
|
||||
turn off 632,991 through 774,998
|
||||
toggle 723,526 through 945,792
|
||||
turn on 344,149 through 441,640
|
||||
toggle 568,927 through 624,952
|
||||
turn on 621,784 through 970,788
|
||||
toggle 665,783 through 795,981
|
||||
toggle 386,610 through 817,730
|
||||
toggle 440,399 through 734,417
|
||||
toggle 939,201 through 978,803
|
||||
turn off 395,883 through 554,929
|
||||
turn on 340,309 through 637,561
|
||||
turn off 875,147 through 946,481
|
||||
turn off 945,837 through 957,922
|
||||
turn off 429,982 through 691,991
|
||||
toggle 227,137 through 439,822
|
||||
toggle 4,848 through 7,932
|
||||
turn off 545,146 through 756,943
|
||||
turn on 763,863 through 937,994
|
||||
turn on 232,94 through 404,502
|
||||
turn off 742,254 through 930,512
|
||||
turn on 91,931 through 101,942
|
||||
toggle 585,106 through 651,425
|
||||
turn on 506,700 through 567,960
|
||||
turn off 548,44 through 718,352
|
||||
turn off 194,827 through 673,859
|
||||
turn off 6,645 through 509,764
|
||||
turn off 13,230 through 821,361
|
||||
turn on 734,629 through 919,631
|
||||
toggle 788,552 through 957,972
|
||||
toggle 244,747 through 849,773
|
||||
turn off 162,553 through 276,887
|
||||
turn off 569,577 through 587,604
|
||||
turn off 799,482 through 854,956
|
||||
turn on 744,535 through 909,802
|
||||
toggle 330,641 through 396,986
|
||||
turn off 927,458 through 966,564
|
||||
toggle 984,486 through 986,913
|
||||
toggle 519,682 through 632,708
|
||||
turn on 984,977 through 989,986
|
||||
toggle 766,423 through 934,495
|
||||
turn on 17,509 through 947,718
|
||||
turn on 413,783 through 631,903
|
||||
turn on 482,370 through 493,688
|
||||
turn on 433,859 through 628,938
|
||||
turn off 769,549 through 945,810
|
||||
turn on 178,853 through 539,941
|
||||
turn off 203,251 through 692,433
|
||||
turn off 525,638 through 955,794
|
||||
turn on 169,70 through 764,939
|
||||
toggle 59,352 through 896,404
|
||||
toggle 143,245 through 707,320
|
||||
turn off 103,35 through 160,949
|
||||
toggle 496,24 through 669,507
|
||||
turn off 581,847 through 847,903
|
||||
turn on 689,153 through 733,562
|
||||
turn on 821,487 through 839,699
|
||||
turn on 837,627 through 978,723
|
||||
toggle 96,748 through 973,753
|
||||
toggle 99,818 through 609,995
|
||||
turn on 731,193 through 756,509
|
||||
turn off 622,55 through 813,365
|
||||
turn on 456,490 through 576,548
|
||||
turn on 48,421 through 163,674
|
||||
turn off 853,861 through 924,964
|
||||
turn off 59,963 through 556,987
|
||||
turn on 458,710 through 688,847
|
||||
toggle 12,484 through 878,562
|
||||
turn off 241,964 through 799,983
|
||||
turn off 434,299 through 845,772
|
||||
toggle 896,725 through 956,847
|
||||
turn on 740,289 through 784,345
|
||||
turn off 395,840 through 822,845
|
||||
turn on 955,224 through 996,953
|
||||
turn off 710,186 through 957,722
|
||||
turn off 485,949 through 869,985
|
||||
turn on 848,209 through 975,376
|
||||
toggle 221,241 through 906,384
|
||||
turn on 588,49 through 927,496
|
||||
turn on 273,332 through 735,725
|
||||
turn on 505,962 through 895,962
|
||||
toggle 820,112 through 923,143
|
||||
turn on 919,792 through 978,982
|
||||
toggle 489,461 through 910,737
|
||||
turn off 202,642 through 638,940
|
||||
turn off 708,953 through 970,960
|
||||
toggle 437,291 through 546,381
|
||||
turn on 409,358 through 837,479
|
||||
turn off 756,279 through 870,943
|
||||
turn off 154,657 through 375,703
|
||||
turn off 524,622 through 995,779
|
||||
toggle 514,221 through 651,850
|
||||
toggle 808,464 through 886,646
|
||||
toggle 483,537 through 739,840
|
||||
toggle 654,769 through 831,825
|
||||
turn off 326,37 through 631,69
|
||||
turn off 590,570 through 926,656
|
||||
turn off 881,913 through 911,998
|
||||
turn on 996,102 through 998,616
|
||||
turn off 677,503 through 828,563
|
||||
turn on 860,251 through 877,441
|
||||
turn off 964,100 through 982,377
|
||||
toggle 888,403 through 961,597
|
||||
turn off 632,240 through 938,968
|
||||
toggle 731,176 through 932,413
|
||||
turn on 5,498 through 203,835
|
||||
turn on 819,352 through 929,855
|
||||
toggle 393,813 through 832,816
|
||||
toggle 725,689 through 967,888
|
||||
turn on 968,950 through 969,983
|
||||
turn off 152,628 through 582,896
|
||||
turn off 165,844 through 459,935
|
||||
turn off 882,741 through 974,786
|
||||
turn off 283,179 through 731,899
|
||||
toggle 197,366 through 682,445
|
||||
turn on 106,309 through 120,813
|
||||
toggle 950,387 through 967,782
|
||||
turn off 274,603 through 383,759
|
||||
turn off 155,665 through 284,787
|
||||
toggle 551,871 through 860,962
|
||||
turn off 30,826 through 598,892
|
||||
toggle 76,552 through 977,888
|
||||
turn on 938,180 through 994,997
|
||||
toggle 62,381 through 993,656
|
||||
toggle 625,861 through 921,941
|
||||
turn on 685,311 through 872,521
|
||||
turn on 124,934 through 530,962
|
||||
turn on 606,379 through 961,867
|
||||
turn off 792,735 through 946,783
|
||||
turn on 417,480 through 860,598
|
||||
toggle 178,91 through 481,887
|
||||
turn off 23,935 through 833,962
|
||||
toggle 317,14 through 793,425
|
||||
turn on 986,89 through 999,613
|
||||
turn off 359,201 through 560,554
|
||||
turn off 729,494 through 942,626
|
||||
turn on 204,143 through 876,610
|
||||
toggle 474,97 through 636,542
|
||||
turn off 902,924 through 976,973
|
||||
turn off 389,442 through 824,638
|
||||
turn off 622,863 through 798,863
|
||||
turn on 840,622 through 978,920
|
||||
toggle 567,374 through 925,439
|
||||
turn off 643,319 through 935,662
|
||||
toggle 185,42 through 294,810
|
||||
turn on 47,124 through 598,880
|
||||
toggle 828,303 through 979,770
|
||||
turn off 174,272 through 280,311
|
||||
turn off 540,50 through 880,212
|
||||
turn on 141,994 through 221,998
|
||||
turn on 476,695 through 483,901
|
||||
turn on 960,216 through 972,502
|
||||
toggle 752,335 through 957,733
|
||||
turn off 419,713 through 537,998
|
||||
toggle 772,846 through 994,888
|
||||
turn on 881,159 through 902,312
|
||||
turn off 537,651 through 641,816
|
||||
toggle 561,947 through 638,965
|
||||
turn on 368,458 through 437,612
|
||||
turn on 290,149 through 705,919
|
||||
turn on 711,918 through 974,945
|
||||
toggle 916,242 through 926,786
|
||||
toggle 522,272 through 773,314
|
||||
turn on 432,897 through 440,954
|
||||
turn off 132,169 through 775,380
|
||||
toggle 52,205 through 693,747
|
||||
toggle 926,309 through 976,669
|
||||
turn off 838,342 through 938,444
|
||||
turn on 144,431 through 260,951
|
||||
toggle 780,318 through 975,495
|
||||
turn off 185,412 through 796,541
|
||||
turn on 879,548 through 892,860
|
||||
turn on 294,132 through 460,338
|
||||
turn on 823,500 through 899,529
|
||||
turn off 225,603 through 483,920
|
||||
toggle 717,493 through 930,875
|
||||
toggle 534,948 through 599,968
|
||||
turn on 522,730 through 968,950
|
||||
turn off 102,229 through 674,529
|
||||
3
2015/day06/sample.day06
Normal file
3
2015/day06/sample.day06
Normal file
@@ -0,0 +1,3 @@
|
||||
turn on 0,0 through 999,999
|
||||
toggle 0,0 through 999,0
|
||||
turn off 499,499 through 500,500
|
||||
49
2015/day07.py
Normal file
49
2015/day07.py
Normal file
@@ -0,0 +1,49 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(True)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
for dataRow in data:
|
||||
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
339
2015/day07/input.day07
Normal file
339
2015/day07/input.day07
Normal file
@@ -0,0 +1,339 @@
|
||||
lf AND lq -> ls
|
||||
iu RSHIFT 1 -> jn
|
||||
bo OR bu -> bv
|
||||
gj RSHIFT 1 -> hc
|
||||
et RSHIFT 2 -> eu
|
||||
bv AND bx -> by
|
||||
is OR it -> iu
|
||||
b OR n -> o
|
||||
gf OR ge -> gg
|
||||
NOT kt -> ku
|
||||
ea AND eb -> ed
|
||||
kl OR kr -> ks
|
||||
hi AND hk -> hl
|
||||
au AND av -> ax
|
||||
lf RSHIFT 2 -> lg
|
||||
dd RSHIFT 3 -> df
|
||||
eu AND fa -> fc
|
||||
df AND dg -> di
|
||||
ip LSHIFT 15 -> it
|
||||
NOT el -> em
|
||||
et OR fe -> ff
|
||||
fj LSHIFT 15 -> fn
|
||||
t OR s -> u
|
||||
ly OR lz -> ma
|
||||
ko AND kq -> kr
|
||||
NOT fx -> fy
|
||||
et RSHIFT 1 -> fm
|
||||
eu OR fa -> fb
|
||||
dd RSHIFT 2 -> de
|
||||
NOT go -> gp
|
||||
kb AND kd -> ke
|
||||
hg OR hh -> hi
|
||||
jm LSHIFT 1 -> kg
|
||||
NOT cn -> co
|
||||
jp RSHIFT 2 -> jq
|
||||
jp RSHIFT 5 -> js
|
||||
1 AND io -> ip
|
||||
eo LSHIFT 15 -> es
|
||||
1 AND jj -> jk
|
||||
g AND i -> j
|
||||
ci RSHIFT 3 -> ck
|
||||
gn AND gp -> gq
|
||||
fs AND fu -> fv
|
||||
lj AND ll -> lm
|
||||
jk LSHIFT 15 -> jo
|
||||
iu RSHIFT 3 -> iw
|
||||
NOT ii -> ij
|
||||
1 AND cc -> cd
|
||||
bn RSHIFT 3 -> bp
|
||||
NOT gw -> gx
|
||||
NOT ft -> fu
|
||||
jn OR jo -> jp
|
||||
iv OR jb -> jc
|
||||
hv OR hu -> hw
|
||||
19138 -> b
|
||||
gj RSHIFT 5 -> gm
|
||||
hq AND hs -> ht
|
||||
dy RSHIFT 1 -> er
|
||||
ao OR an -> ap
|
||||
ld OR le -> lf
|
||||
bk LSHIFT 1 -> ce
|
||||
bz AND cb -> cc
|
||||
bi LSHIFT 15 -> bm
|
||||
il AND in -> io
|
||||
af AND ah -> ai
|
||||
as RSHIFT 1 -> bl
|
||||
lf RSHIFT 3 -> lh
|
||||
er OR es -> et
|
||||
NOT ax -> ay
|
||||
ci RSHIFT 1 -> db
|
||||
et AND fe -> fg
|
||||
lg OR lm -> ln
|
||||
k AND m -> n
|
||||
hz RSHIFT 2 -> ia
|
||||
kh LSHIFT 1 -> lb
|
||||
NOT ey -> ez
|
||||
NOT di -> dj
|
||||
dz OR ef -> eg
|
||||
lx -> a
|
||||
NOT iz -> ja
|
||||
gz LSHIFT 15 -> hd
|
||||
ce OR cd -> cf
|
||||
fq AND fr -> ft
|
||||
at AND az -> bb
|
||||
ha OR gz -> hb
|
||||
fp AND fv -> fx
|
||||
NOT gb -> gc
|
||||
ia AND ig -> ii
|
||||
gl OR gm -> gn
|
||||
0 -> c
|
||||
NOT ca -> cb
|
||||
bn RSHIFT 1 -> cg
|
||||
c LSHIFT 1 -> t
|
||||
iw OR ix -> iy
|
||||
kg OR kf -> kh
|
||||
dy OR ej -> ek
|
||||
km AND kn -> kp
|
||||
NOT fc -> fd
|
||||
hz RSHIFT 3 -> ib
|
||||
NOT dq -> dr
|
||||
NOT fg -> fh
|
||||
dy RSHIFT 2 -> dz
|
||||
kk RSHIFT 2 -> kl
|
||||
1 AND fi -> fj
|
||||
NOT hr -> hs
|
||||
jp RSHIFT 1 -> ki
|
||||
bl OR bm -> bn
|
||||
1 AND gy -> gz
|
||||
gr AND gt -> gu
|
||||
db OR dc -> dd
|
||||
de OR dk -> dl
|
||||
as RSHIFT 5 -> av
|
||||
lf RSHIFT 5 -> li
|
||||
hm AND ho -> hp
|
||||
cg OR ch -> ci
|
||||
gj AND gu -> gw
|
||||
ge LSHIFT 15 -> gi
|
||||
e OR f -> g
|
||||
fp OR fv -> fw
|
||||
fb AND fd -> fe
|
||||
cd LSHIFT 15 -> ch
|
||||
b RSHIFT 1 -> v
|
||||
at OR az -> ba
|
||||
bn RSHIFT 2 -> bo
|
||||
lh AND li -> lk
|
||||
dl AND dn -> do
|
||||
eg AND ei -> ej
|
||||
ex AND ez -> fa
|
||||
NOT kp -> kq
|
||||
NOT lk -> ll
|
||||
x AND ai -> ak
|
||||
jp OR ka -> kb
|
||||
NOT jd -> je
|
||||
iy AND ja -> jb
|
||||
jp RSHIFT 3 -> jr
|
||||
fo OR fz -> ga
|
||||
df OR dg -> dh
|
||||
gj RSHIFT 2 -> gk
|
||||
gj OR gu -> gv
|
||||
NOT jh -> ji
|
||||
ap LSHIFT 1 -> bj
|
||||
NOT ls -> lt
|
||||
ir LSHIFT 1 -> jl
|
||||
bn AND by -> ca
|
||||
lv LSHIFT 15 -> lz
|
||||
ba AND bc -> bd
|
||||
cy LSHIFT 15 -> dc
|
||||
ln AND lp -> lq
|
||||
x RSHIFT 1 -> aq
|
||||
gk OR gq -> gr
|
||||
NOT kx -> ky
|
||||
jg AND ji -> jj
|
||||
bn OR by -> bz
|
||||
fl LSHIFT 1 -> gf
|
||||
bp OR bq -> br
|
||||
he OR hp -> hq
|
||||
et RSHIFT 5 -> ew
|
||||
iu RSHIFT 2 -> iv
|
||||
gl AND gm -> go
|
||||
x OR ai -> aj
|
||||
hc OR hd -> he
|
||||
lg AND lm -> lo
|
||||
lh OR li -> lj
|
||||
da LSHIFT 1 -> du
|
||||
fo RSHIFT 2 -> fp
|
||||
gk AND gq -> gs
|
||||
bj OR bi -> bk
|
||||
lf OR lq -> lr
|
||||
cj AND cp -> cr
|
||||
hu LSHIFT 15 -> hy
|
||||
1 AND bh -> bi
|
||||
fo RSHIFT 3 -> fq
|
||||
NOT lo -> lp
|
||||
hw LSHIFT 1 -> iq
|
||||
dd RSHIFT 1 -> dw
|
||||
dt LSHIFT 15 -> dx
|
||||
dy AND ej -> el
|
||||
an LSHIFT 15 -> ar
|
||||
aq OR ar -> as
|
||||
1 AND r -> s
|
||||
fw AND fy -> fz
|
||||
NOT im -> in
|
||||
et RSHIFT 3 -> ev
|
||||
1 AND ds -> dt
|
||||
ec AND ee -> ef
|
||||
NOT ak -> al
|
||||
jl OR jk -> jm
|
||||
1 AND en -> eo
|
||||
lb OR la -> lc
|
||||
iu AND jf -> jh
|
||||
iu RSHIFT 5 -> ix
|
||||
bo AND bu -> bw
|
||||
cz OR cy -> da
|
||||
iv AND jb -> jd
|
||||
iw AND ix -> iz
|
||||
lf RSHIFT 1 -> ly
|
||||
iu OR jf -> jg
|
||||
NOT dm -> dn
|
||||
lw OR lv -> lx
|
||||
gg LSHIFT 1 -> ha
|
||||
lr AND lt -> lu
|
||||
fm OR fn -> fo
|
||||
he RSHIFT 3 -> hg
|
||||
aj AND al -> am
|
||||
1 AND kz -> la
|
||||
dy RSHIFT 5 -> eb
|
||||
jc AND je -> jf
|
||||
cm AND co -> cp
|
||||
gv AND gx -> gy
|
||||
ev OR ew -> ex
|
||||
jp AND ka -> kc
|
||||
fk OR fj -> fl
|
||||
dy RSHIFT 3 -> ea
|
||||
NOT bs -> bt
|
||||
NOT ag -> ah
|
||||
dz AND ef -> eh
|
||||
cf LSHIFT 1 -> cz
|
||||
NOT cv -> cw
|
||||
1 AND cx -> cy
|
||||
de AND dk -> dm
|
||||
ck AND cl -> cn
|
||||
x RSHIFT 5 -> aa
|
||||
dv LSHIFT 1 -> ep
|
||||
he RSHIFT 2 -> hf
|
||||
NOT bw -> bx
|
||||
ck OR cl -> cm
|
||||
bp AND bq -> bs
|
||||
as OR bd -> be
|
||||
he AND hp -> hr
|
||||
ev AND ew -> ey
|
||||
1 AND lu -> lv
|
||||
kk RSHIFT 3 -> km
|
||||
b AND n -> p
|
||||
NOT kc -> kd
|
||||
lc LSHIFT 1 -> lw
|
||||
km OR kn -> ko
|
||||
id AND if -> ig
|
||||
ih AND ij -> ik
|
||||
jr AND js -> ju
|
||||
ci RSHIFT 5 -> cl
|
||||
hz RSHIFT 1 -> is
|
||||
1 AND ke -> kf
|
||||
NOT gs -> gt
|
||||
aw AND ay -> az
|
||||
x RSHIFT 2 -> y
|
||||
ab AND ad -> ae
|
||||
ff AND fh -> fi
|
||||
ci AND ct -> cv
|
||||
eq LSHIFT 1 -> fk
|
||||
gj RSHIFT 3 -> gl
|
||||
u LSHIFT 1 -> ao
|
||||
NOT bb -> bc
|
||||
NOT hj -> hk
|
||||
kw AND ky -> kz
|
||||
as AND bd -> bf
|
||||
dw OR dx -> dy
|
||||
br AND bt -> bu
|
||||
kk AND kv -> kx
|
||||
ep OR eo -> eq
|
||||
he RSHIFT 1 -> hx
|
||||
ki OR kj -> kk
|
||||
NOT ju -> jv
|
||||
ek AND em -> en
|
||||
kk RSHIFT 5 -> kn
|
||||
NOT eh -> ei
|
||||
hx OR hy -> hz
|
||||
ea OR eb -> ec
|
||||
s LSHIFT 15 -> w
|
||||
fo RSHIFT 1 -> gh
|
||||
kk OR kv -> kw
|
||||
bn RSHIFT 5 -> bq
|
||||
NOT ed -> ee
|
||||
1 AND ht -> hu
|
||||
cu AND cw -> cx
|
||||
b RSHIFT 5 -> f
|
||||
kl AND kr -> kt
|
||||
iq OR ip -> ir
|
||||
ci RSHIFT 2 -> cj
|
||||
cj OR cp -> cq
|
||||
o AND q -> r
|
||||
dd RSHIFT 5 -> dg
|
||||
b RSHIFT 2 -> d
|
||||
ks AND ku -> kv
|
||||
b RSHIFT 3 -> e
|
||||
d OR j -> k
|
||||
NOT p -> q
|
||||
NOT cr -> cs
|
||||
du OR dt -> dv
|
||||
kf LSHIFT 15 -> kj
|
||||
NOT ac -> ad
|
||||
fo RSHIFT 5 -> fr
|
||||
hz OR ik -> il
|
||||
jx AND jz -> ka
|
||||
gh OR gi -> gj
|
||||
kk RSHIFT 1 -> ld
|
||||
hz RSHIFT 5 -> ic
|
||||
as RSHIFT 2 -> at
|
||||
NOT jy -> jz
|
||||
1 AND am -> an
|
||||
ci OR ct -> cu
|
||||
hg AND hh -> hj
|
||||
jq OR jw -> jx
|
||||
v OR w -> x
|
||||
la LSHIFT 15 -> le
|
||||
dh AND dj -> dk
|
||||
dp AND dr -> ds
|
||||
jq AND jw -> jy
|
||||
au OR av -> aw
|
||||
NOT bf -> bg
|
||||
z OR aa -> ab
|
||||
ga AND gc -> gd
|
||||
hz AND ik -> im
|
||||
jt AND jv -> jw
|
||||
z AND aa -> ac
|
||||
jr OR js -> jt
|
||||
hb LSHIFT 1 -> hv
|
||||
hf OR hl -> hm
|
||||
ib OR ic -> id
|
||||
fq OR fr -> fs
|
||||
cq AND cs -> ct
|
||||
ia OR ig -> ih
|
||||
dd OR do -> dp
|
||||
d AND j -> l
|
||||
ib AND ic -> ie
|
||||
as RSHIFT 3 -> au
|
||||
be AND bg -> bh
|
||||
dd AND do -> dq
|
||||
NOT l -> m
|
||||
1 AND gd -> ge
|
||||
y AND ae -> ag
|
||||
fo AND fz -> gb
|
||||
NOT ie -> if
|
||||
e AND f -> h
|
||||
x RSHIFT 3 -> z
|
||||
y OR ae -> af
|
||||
hf AND hl -> hn
|
||||
NOT h -> i
|
||||
NOT hn -> ho
|
||||
he RSHIFT 5 -> hh
|
||||
8
2015/day07/sample.day07
Normal file
8
2015/day07/sample.day07
Normal file
@@ -0,0 +1,8 @@
|
||||
123 -> x
|
||||
456 -> y
|
||||
x AND y -> d
|
||||
x OR y -> e
|
||||
x LSHIFT 2 -> f
|
||||
y RSHIFT 2 -> g
|
||||
NOT x -> h
|
||||
NOT y -> i
|
||||
47
2015/day08.py
Normal file
47
2015/day08.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day08/input.day08
Normal file
0
2015/day08/input.day08
Normal file
0
2015/day08/sample.day08
Normal file
0
2015/day08/sample.day08
Normal file
47
2015/day09.py
Normal file
47
2015/day09.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day09/input.day09
Normal file
0
2015/day09/input.day09
Normal file
0
2015/day09/sample.day09
Normal file
0
2015/day09/sample.day09
Normal file
47
2015/day10.py
Normal file
47
2015/day10.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day10/input.day10
Normal file
0
2015/day10/input.day10
Normal file
0
2015/day10/sample.day10
Normal file
0
2015/day10/sample.day10
Normal file
47
2015/day11.py
Normal file
47
2015/day11.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day11/input.day11
Normal file
0
2015/day11/input.day11
Normal file
0
2015/day11/sample.day11
Normal file
0
2015/day11/sample.day11
Normal file
47
2015/day12.py
Normal file
47
2015/day12.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day12/input.day12
Normal file
0
2015/day12/input.day12
Normal file
0
2015/day12/sample.day12
Normal file
0
2015/day12/sample.day12
Normal file
47
2015/day13.py
Normal file
47
2015/day13.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day13/input.day13
Normal file
0
2015/day13/input.day13
Normal file
0
2015/day13/sample.day13
Normal file
0
2015/day13/sample.day13
Normal file
47
2015/day14.py
Normal file
47
2015/day14.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day14/input.day14
Normal file
0
2015/day14/input.day14
Normal file
0
2015/day14/sample.day14
Normal file
0
2015/day14/sample.day14
Normal file
47
2015/day15.py
Normal file
47
2015/day15.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day15/input.day15
Normal file
0
2015/day15/input.day15
Normal file
0
2015/day15/sample.day15
Normal file
0
2015/day15/sample.day15
Normal file
47
2015/day16.py
Normal file
47
2015/day16.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day16/input.day16
Normal file
0
2015/day16/input.day16
Normal file
0
2015/day16/sample.day16
Normal file
0
2015/day16/sample.day16
Normal file
47
2015/day17.py
Normal file
47
2015/day17.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day17/input.day17
Normal file
0
2015/day17/input.day17
Normal file
0
2015/day17/sample.day17
Normal file
0
2015/day17/sample.day17
Normal file
47
2015/day18.py
Normal file
47
2015/day18.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day18/input.day18
Normal file
0
2015/day18/input.day18
Normal file
0
2015/day18/sample.day18
Normal file
0
2015/day18/sample.day18
Normal file
47
2015/day19.py
Normal file
47
2015/day19.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day19/input.day19
Normal file
0
2015/day19/input.day19
Normal file
0
2015/day19/sample.day19
Normal file
0
2015/day19/sample.day19
Normal file
47
2015/day20.py
Normal file
47
2015/day20.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day20/input.day20
Normal file
0
2015/day20/input.day20
Normal file
0
2015/day20/sample.day20
Normal file
0
2015/day20/sample.day20
Normal file
47
2015/day21.py
Normal file
47
2015/day21.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day21/input.day21
Normal file
0
2015/day21/input.day21
Normal file
0
2015/day21/sample.day21
Normal file
0
2015/day21/sample.day21
Normal file
47
2015/day22.py
Normal file
47
2015/day22.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day22/input.day22
Normal file
0
2015/day22/input.day22
Normal file
0
2015/day22/sample.day22
Normal file
0
2015/day22/sample.day22
Normal file
47
2015/day23.py
Normal file
47
2015/day23.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day23/input.day23
Normal file
0
2015/day23/input.day23
Normal file
0
2015/day23/sample.day23
Normal file
0
2015/day23/sample.day23
Normal file
47
2015/day24.py
Normal file
47
2015/day24.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day24/input.day24
Normal file
0
2015/day24/input.day24
Normal file
0
2015/day24/sample.day24
Normal file
0
2015/day24/sample.day24
Normal file
47
2015/day25.py
Normal file
47
2015/day25.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# AOC Day Script Day XX
|
||||
# Date : 20XX.12.XX
|
||||
# Python Code
|
||||
# Developer : David Bandeira
|
||||
|
||||
import sys,time
|
||||
from helpingFunctions import *
|
||||
|
||||
setSampleMode(False)
|
||||
|
||||
aocDay = identifyDay(sys.argv[0])
|
||||
aocYear = identifyYear(sys.argv[0])
|
||||
|
||||
path = getPath2Data(aocDay,aocYear)
|
||||
filename = getFilename2Data(aocDay)
|
||||
|
||||
def taskA (data) -> int:
|
||||
gameScoreA = 0
|
||||
return gameScoreA
|
||||
|
||||
def taskB (data) -> int:
|
||||
gameScoreB = 0
|
||||
return gameScoreB
|
||||
|
||||
def task(task: int,data) -> int:
|
||||
score=0
|
||||
if task == 1:
|
||||
score = taskA(data)
|
||||
elif task == 2:
|
||||
score = taskB(data)
|
||||
return score
|
||||
|
||||
def main():
|
||||
showSampleMode()
|
||||
try:
|
||||
data = open(path+'/'+filename).read().strip().split('\n')
|
||||
except:
|
||||
print ('no inputfile found')
|
||||
print ('please check file %s on path %s' % (filename, path))
|
||||
quit()
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 1: '+ str(task(1,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
st=time.time()
|
||||
print ('Day '+aocDay+': Tasks 2: '+ str(task(2,data))+ ' executation time: ' + str(int((time.time()-st)*1000)) + 'ms')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
0
2015/day25/input.day25
Normal file
0
2015/day25/input.day25
Normal file
0
2015/day25/sample.day25
Normal file
0
2015/day25/sample.day25
Normal file
42
2015/helpingFunctions.py
Normal file
42
2015/helpingFunctions.py
Normal file
@@ -0,0 +1,42 @@
|
||||
import sys, os
|
||||
|
||||
sampleMode = False
|
||||
|
||||
def identifyDay(inputArgument):
|
||||
twoDigitsDay = '00'
|
||||
day = 0 if (inputArgument[inputArgument.rfind('/')+4:inputArgument.rfind('.')] == 'XX') else inputArgument[inputArgument.rfind('/')+4:inputArgument.rfind('.')]
|
||||
twoDigitsDay = str(day).zfill(2)
|
||||
return twoDigitsDay
|
||||
|
||||
def identifyYear(inputArgument):
|
||||
inputArgument = inputArgument[:inputArgument.rfind('/')]
|
||||
inputArgument = inputArgument[inputArgument.rfind('/')+1:]
|
||||
year = int(inputArgument) if (inputArgument.isnumeric()) else 0
|
||||
fourDigitsYear = str(year).zfill(4)
|
||||
return fourDigitsYear
|
||||
|
||||
def setSampleMode(mode:bool):
|
||||
global sampleMode
|
||||
if (mode) : sampleMode = True
|
||||
return
|
||||
|
||||
def getSampleMode():
|
||||
return sampleMode
|
||||
|
||||
def showSampleMode():
|
||||
if ( getSampleMode() ):
|
||||
print ("----------------------")
|
||||
print ("Running im Sample Mode")
|
||||
print ("----------------------")
|
||||
return
|
||||
|
||||
def getPath2Data(aocDay,aocYear):
|
||||
return './'+str(aocYear)+'/day'+str(aocDay)+'/'
|
||||
|
||||
def getFilename2Data(aocDay):
|
||||
dataFilename = 'sample.day'+str(aocDay) if ( sampleMode ) else 'input.day'+str(aocDay)
|
||||
return dataFilename
|
||||
|
||||
def readDataFile (path, filename):
|
||||
data = ''
|
||||
return data
|
||||
Reference in New Issue
Block a user