def test_loadExerciseDataFrom(): _data, _tokens = loadExerciseDataFrom(TEST_EXERCISE_DATA_LOAD_FILE_NAME) assert len(_data) assert len(_tokens) assert isinstance(_data, list) assert isinstance(_tokens, list)
def main(fileName: str = None): fileName = mainStart(fileName, 12) data, tokens = loadExerciseDataFrom(fileName) answer1 = resolvePuzzle01Using(data, tokens) answer2, _ = resolvePuzzle02Using(data, tokens) print('answer 1: %d' % answer1) print('answer 2: %d' % answer2) return answer1, answer2
def main(fileName: str = None): fileName = mainStart(fileName, 11) data, tokens = loadExerciseDataFrom(fileName) answer1, totalRounds = resolvePuzzle01Using(data, tokens) print('answer 1: %d in %d rounds' % (answer1, totalRounds)) answer2, totalRounds = resolvePuzzle02Using(data, tokens) print('answer 2: %d in %d rounds' % (answer2, totalRounds)) return answer1, answer2
def main(fileName: str = None): fileName = mainStart(fileName, 18) data, tokens = loadExerciseDataFrom(fileName) answer1 = resolvePuzzleUsing(data, tokens, False) print('answer 1: %d' % answer1) answer2 = resolvePuzzleUsing(data, tokens, True) print('answer 2: %d' % answer2) return answer1, answer2
def main(fileName: str = None, unitTest=False): fileName = mainStart(fileName, 15) data, tokens = loadExerciseDataFrom(fileName) answer1 = resolvePuzzle01Using(data, tokens) answer2 = -1 if unitTest else resolvePuzzle02Using(data, tokens) print('answer 1: %d' % answer1) print('answer 2: %d' % answer2) return answer1, answer2
def main(fileName:str = None): fileName = mainStart(fileName, 19) data, tokens = loadExerciseDataFrom(fileName) answer1, rules, messages = resolvePuzzle01Using(data, tokens) print('answer 1: %d' % answer1) answer2 = resolvePuzzle02Using(rules, messages) print('answer 2: %d' % answer2) return answer1, answer2
def main(fileName: str = None, fieldSignature='departure', unitTest=False): fileName = mainStart(fileName, 16) data, tokens = loadExerciseDataFrom(fileName) answer1, ticketRanges, ticket, nearby, validTickets, invalidTickets = resolvePuzzle01Using( data, tokens) print('answer 1: %d' % answer1) answer2 = -1 if unitTest else resolvePuzzle02Using( ticketRanges, ticket, validTickets, fieldSignature) print('answer 2: %d' % answer2) return answer1, answer2
def main(fileName: str = None, preambleLength=PREAMBLE_LENGTH): fileName = mainStart(fileName, 9) data, tokens = loadExerciseDataFrom(fileName) answer1, \ data = resolvePuzzle01Using(data, tokens, preambleLength) answer2 = resolvePuzzle02Using(data, tokens, preambleLength, answer1) print('answer 1: %d' % answer1) print('answer 2: %d' % answer2) return answer1, answer2
def main(fileName:str = None): fileName = mainStart(fileName, %d%) data, tokens = loadExerciseDataFrom(fileName) rawText = loadRawExerciseTextFrom(fileName) textRecords = loadExerciseDataAsTextRecordsFrom(fileName) # ------------------------------------------ # Answer 1 # ------------------------------------------ answer1 = resolvePuzzle01Using(data, tokens, rawText, textRecords) answer2 = resolvePuzzle02Using(data, tokens, rawText, textRecords) print('answer 1: %d, answer 2: %d' % (answer1, answer2)) return answer1, answer2
def main(fileName: str = None): fileName = mainStart(fileName, 13) data, tokens = loadExerciseDataFrom(fileName) earliestDeparture = int(data[0]) busSchedule = [int(busID) for busID in data[1].split(',') if busID != 'x'] answer1, _ = resolvePuzzle01Using(earliestDeparture, busSchedule) busSchedule = [ int(busID) if busID != 'x' else -1 for busID in data[1].split(',') ] answer2 = resolvePuzzle02Using(busSchedule) print('answer 1: %d' % answer1) print('answer 2: %d' % answer2) return answer1, answer2
def main(fileName: str = None, unitTest=False): fileName = mainStart(fileName, 17) shape = 15 if unitTest else 20 data, tokens = loadExerciseDataFrom(fileName) # ------------------------------------------ # Answer 1 # ------------------------------------------ answer1 = resolvePuzzle01Using(data, tokens, 6, 3, shape) print('answer 1: %d' % answer1) # ------------------------------------------ # Answer 2 # ------------------------------------------ answer2 = resolvePuzzle02Using(data, tokens, unitTest) print('answer 2: %d' % answer2) return answer1, answer2
##..#..... #...##..#. ####.#...# ##.##.###. ##...#.### .#.#.#..## ..#....#.. ###...#.#. ..###..### """ TEST_DAY_20_IMGTILES_FILE_NAME = 'resources/test/day_20_imgtiles-test-data.txt' # +++ tests +++ _data, _tokens = loadExerciseDataFrom(TEST_DAY_20_IMGTILES_FILE_NAME) _rawText = loadRawExerciseTextFrom(TEST_DAY_20_IMGTILES_FILE_NAME) _textRecords = loadExerciseDataAsTextRecordsFrom( TEST_DAY_20_IMGTILES_FILE_NAME) def test__edgesOf(): tile = SAMPLE_TILE.split(':\n')[1] northEdge = bitarray('0011010010') westEdge = bitarray('0111110010') edges = _edgesOf(tile) assert northEdge == edges.north
from aoc.%t% import main from aoc.%t% import resolvePuzzle01Using from aoc.%t% import resolvePuzzle02Using from util import loadExerciseDataAsTextRecordsFrom from util import loadExerciseDataFrom from util import loadRawExerciseTextFrom # +++ constants +++ TEST_%T%_FILE_NAME = 'resources/test/%t%-test-data.txt' # +++ tests +++ _data, _tokens = loadExerciseDataFrom(TEST_%T%_FILE_NAME) _rawText = loadRawExerciseTextFrom(TEST_%T%_FILE_NAME) _textRecords = loadExerciseDataAsTextRecordsFrom(TEST_%T%_FILE_NAME) def test_resolvePuzzle01Using(): answer = resolvePuzzle01Using(_data, _tokens, _rawText, _textRecords) assert answer == -1 def test_resolvePuzzle02Using(): answer = resolvePuzzle02Using(_data, _tokens, _rawText, _textRecords)
from aoc.day_21_allergen import resolvePuzzle01Using from aoc.day_21_allergen import resolvePuzzle02Using from aoc.day_21_allergen import _extractFoodItemFrom from aoc.day_21_allergen import _classifyByPotentialAllergen from util import loadExerciseDataAsTextRecordsFrom from util import loadExerciseDataFrom from util import loadRawExerciseTextFrom # +++ constants +++ TEST_DAY_21_ALLERGEN_FILE_NAME = 'resources/test/day_21_allergen-test-data.txt' # +++ tests +++ _data, _tokens = loadExerciseDataFrom(TEST_DAY_21_ALLERGEN_FILE_NAME) _rawText = loadRawExerciseTextFrom(TEST_DAY_21_ALLERGEN_FILE_NAME) _textRecords = loadExerciseDataAsTextRecordsFrom( TEST_DAY_21_ALLERGEN_FILE_NAME) def test__extractFoodItemFrom(): foodItem = _extractFoodItemFrom('sqjhc fvjkl (contains soy') assert 'fvjkl' in foodItem.ingredients assert 'soy' in foodItem.allergens foodItem = _extractFoodItemFrom( 'mxmxvkd kfcds sqjhc nhms (contains dairy, fish)') assert 'mxmxvkd' in foodItem.ingredients