Untitled

 avatar
unknown
python
5 months ago
1.3 kB
3
Indexable
def generateListUsingTwoNumber(inputNum1, inputNum2, outputArrayLength):
    result = []
    seen = set() 
    current_numbers = [inputNum1, inputNum2]  
    current_length = 1  
    
    while len(result) < outputArrayLength:
        
        next_numbers = []
        for base in current_numbers:
            for digit in [inputNum1, inputNum2]:
                new_num = base
                if current_length > 1:
                    new_num = base * 10 + digit
                if new_num not in seen:
                    next_numbers.append(new_num)
                    seen.add(new_num)
        
     
        next_numbers.sort()
        for num in next_numbers:
            if len(result) < outputArrayLength:
                result.append(num)
        
        
        current_numbers = next_numbers
        current_length += 1
    
    return result

# Test function
def test_function():
    test_cases = [
        (5, 6, 5),
        (5, 6, 10),
        (3, 9, 15)
    ]
    
    for n1, n2, length in test_cases:
        output = generateListUsingTwoNumber(n1, n2, length)
        print(f"Input Numbers: n1={n1} and n2={n2}")
        print(f"Output Array (length={length}): {output}")
        print(f"Output length: {len(output)}")
        print()
Editor is loading...
Leave a Comment