def test_08(self): """ 7x3 tent, one rock => fits """ tent_size = (7,3) rocks = {(1,1)} packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_09(self): """ 3x6 tent, three rocks => fits """ tent_size = (3,6) rocks = {(2,1),(0,4),(1,4)} packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_05(self): """ 4x4 tent, no rocks => fits """ tent_size = (4,4) rocks = set() packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_07(self): """ reverse-C-shaped bag in 3x2 tent, one rock => fits """ tent_size = (3,2) rocks = {(1,0)} packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_13(): # 5x5 tent with three rocks => fits tent_size = (5, 5) rocks = {(1, 1), (1, 3), (3, 1)} packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_04(self): """ Square bag in 2x2 tent, no rocks => fits """ tent_size = (2,2) rocks = set() packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_01(self): """ horizontal bag in 1x3 tent, no rocks => fits """ tent_size = (1,3) rocks = set() packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_11(): # 5x5 tent with two rocks in the center tent_size = (5, 5) rocks = {(2, 2), (2, 3)} packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_19(self): """ 4x4 tent with two rocks, 2 extra spaces => fits """ tent_size = (4,4) rocks = {(0,1),(1,0)} packable = True extra = 2 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_20(self): """ 4x4 tent with two rocks, 1 extra space => fails """ tent_size = (4,4) rocks = {(0,1),(1,0)} packable = False extra = 1 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_16(self): """ 9x7 tent with scattered rocks, 1 extra space => fits """ tent_size = (9,7) rocks = {(0,2), (2,2), (2,4), (3,4), (7,4), (5,4), (5,5), (8,6), (7,1), (6,3), (6,4), (6,2)} packable = True extra = 1 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_15(self): """ 7x6 tent with two rocks => fails """ tent_size = (7,6) rocks = {(5,5),(6,4)} packable = False extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_13(self): """ 5x5 tent with three rocks => fits """ tent_size = (5,5) rocks = {(1,1),(1,3),(3,1)} packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_12(self): """ 5x5 tent with 4 rocks => fails """ tent_size = (5,5) rocks = {(1,1),(1,3),(3,1),(3,3)} packable = False extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_02(self): """ vertical bag in 3x1 tent, no rocks => fits """ tent_size = (3,1) rocks = set() packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_10(): # 5x2 tent, two rocks => fits tent_size = (5, 2) rocks = {(1, 0), (3, 1)} packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_03(self): """ L-shaped bag in 2x2 tent, one rock => fits """ tent_size = (2,2) rocks = {(0,1)} packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_12(): # 5x5 tent with 4 rocks => fails tent_size = (5, 5) rocks = {(1, 1), (1, 3), (3, 1), (3, 3)} packable = False validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_10(self): """ 5x2 tent, two rocks => fits """ tent_size = (5,2) rocks = {(1,0),(3,1)} packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_11(self): """ 5x5 tent with two rocks in the center => fits """ tent_size = (5,5) rocks = {(2,2),(2,3)} packable = True extra = 0 self.validate_result(tent_size, rocks, packable, extra, lab.pack(tent_size, rocks, bag_list, extra))
def test_09(): # 3x6 tent, three rocks => fits tent_size = (3, 6) rocks = {(2, 1), (0, 4), (1, 4)} packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_07(): # reverse-C-shaped bag in 3x2 tent, one rock => fits tent_size = (3, 2) rocks = {(1, 0)} packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_08(): # 7x3 tent, one rock => fits tent_size = (7, 3) rocks = {(1, 1)} packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_04(): # Square bag in 2x2 tent, no rocks => fits tent_size = (2, 2) rocks = set() packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_05(): # 4x4 tent, no rocks => fits tent_size = (4, 4) rocks = set() packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_03(): # L-shaped bag in 2x2 tent, one rock => fits tent_size = (2, 2) rocks = {(0, 1)} packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_02(): # vertical bag in 3x1 tent, no rocks => fits tent_size = (3, 1) rocks = set() packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_01(): # horizontal bag in 1x3 tent, no rocks => fits tent_size = (1, 3) rocks = set() packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_15(): # 7x6 tent with two rocks => fails tent_size = (7, 6) rocks = {(5, 5), (6, 4)} packable = False validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def test_14(): # 9x7 tent with scattered rocks tent_size = (9, 7) rocks = {(0, 2), (2, 2), (2, 4), (3, 4), (7, 4), (5, 4), (5, 5), (8, 6), (7, 1)} packable = True validate_result(tent_size, rocks, packable, lab.pack(tent_size, rocks, bag_list))
def pack(input_data): tentSize = copy.deepcopy(input_data["tent_size"]) missingSquares = copy.deepcopy(input_data["rocks"]) r = lab.pack(tentSize, missingSquares) return r