Esempio n. 1
0
 def test_givenDataWithNoMarkers_returnOriginalDataLength(self):
     self.assertEqual(len("MEOW"), get_decompressed_data_length("MEOW"))
Esempio n. 2
0
 def test_givenDataWithSingleMarkerWhichRepeatsOneCharacterOneTime_returnDataLengthCorrectly(self):
     self.assertEqual(1, get_decompressed_data_length("(1x1)A"))
Esempio n. 3
0
 def test_givenDataWithMultipleNonOverlappingMarkers_returnLengthCorrectly(self):
     self.assertEqual(11, get_decompressed_data_length("A(2x2)BCD(2x2)EFG"))
Esempio n. 4
0
 def test_givenDataWithContentBeforeOverlappingMarkers_returnLengthCorrectly(self):
     self.assertEqual(5, get_decompressed_data_length("AA(6x1)(1x3)A"))
Esempio n. 5
0
 def test_givenDataWithMultipleOverlappingMarkers_whenDecompressing_decompressForAllMarkersCorrectly(self):
     self.assertEqual(241920, get_decompressed_data_length("(27x12)(20x12)(13x14)(7x10)(1x12)A"))
Esempio n. 6
0
 def test_givenDataWithOverlappingMarkers_whenDecompressing_decompressForBothMarkersCorrectly(self):
     self.assertEqual(3, get_decompressed_data_length("(6x1)(1x3)A"))
Esempio n. 7
0
from src.day_9.Day9 import Day9
from src.day_9.Day9V2 import get_decompressed_data_length

data = open('input.txt', 'r').read().strip()
solver = Day9()

print("A:", len(solver.decompress_data(data)))
print("B:", get_decompressed_data_length(data))