Move History

Fork Selected
  • Lists
    Data Structures
    Code
    def generate_binary_list(a, b, c, d):
        (a, b) = ((a, b), (b, a))[d&1]
        return [*((a, b)*(c-d>>1)), *((), (a,))[c>d][:c-d&1]]
    Test Cases
    import codewars_test as test
    # TODO Write tests
    import solution # or from solution import example
    
    # test.assert_equals(actual, expected, [optional] message)
    test_classes=[]
    
    class test_class():
        def __init__(self,first_number,second_number,elements_on_list,range_begins_at,expected):
            self.first_number=first_number
            self.second_number=second_number
            self.elements_on_list=elements_on_list
            self.range_begins_at=range_begins_at
            self.expected=expected
            
    test_classes.append(test_class(2,5,10,0,[2, 5, 2, 5, 2, 5, 2, 5, 2, 5]))
    test_classes.append(test_class(10,7,23,0,[10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10]))
    test_classes.append(test_class(0,0,0,0,[]))
    test_classes.append(test_class(-7,14,-3,0,[]))
    test_classes.append(test_class(-7,14,-3,-7,[14, -7, 14, -7]))
    
    
    @test.describe("Example")
    def test_group():
        @test.it("test case")
        def test_case():
            for obj in test_classes:
                result=generate_binary_list(obj.first_number,obj.second_number,obj.elements_on_list,obj.range_begins_at)
                test.assert_equals(result,obj.expected)
    
  • Code
    • def generate_binay_list(first_number,second_number,elements_on_list,range_begins_at):
    • return [first_number if x%2==0 else second_number for x in range(range_begins_at, elements_on_list)]
    • def generate_binary_list(a, b, c, d):
    • (a, b) = ((a, b), (b, a))[d&1]
    • return [*((a, b)*(c-d>>1)), *((), (a,))[c>d][:c-d&1]]
    Test Cases
    • import codewars_test as test
    • # TODO Write tests
    • import solution # or from solution import example
    • # test.assert_equals(actual, expected, [optional] message)
    • test_classes=[]
    • class test_class():
    • def __init__(self,first_number,second_number,elements_on_list,range_begins_at,expected):
    • self.first_number=first_number
    • self.second_number=second_number
    • self.elements_on_list=elements_on_list
    • self.range_begins_at=range_begins_at
    • self.expected=expected
    • test_classes.append(test_class(2,5,10,0,[2, 5, 2, 5, 2, 5, 2, 5, 2, 5]))
    • test_classes.append(test_class(10,7,23,0,[10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10, 7, 10]))
    • test_classes.append(test_class(0,0,0,0,[]))
    • test_classes.append(test_class(-7,14,-3,0,[]))
    • test_classes.append(test_class(-7,14,-3,-7,[14, -7, 14, -7]))
    • @test.describe("Example")
    • def test_group():
    • @test.it("test case")
    • def test_case():
    • for obj in test_classes:
    • result=generate_binay_list(obj.first_number,obj.second_number,obj.elements_on_list,obj.range_begins_at)
    • result=generate_binary_list(obj.first_number,obj.second_number,obj.elements_on_list,obj.range_begins_at)
    • test.assert_equals(result,obj.expected)