In [1]:
def find_total_numbers(third_number, third_last_number, sum_):
    sum_of_missing_number = sum_ - 3*(third_number + third_last_number)
    total_numbers = (2*sum_of_missing_number + 6*(third_number + third_last_number)) / (third_number + third_last_number)
    print total_numbers
    return total_numbers

In [2]:
def find_diff(third_number, third_last_number, distance):
    difference = (third_last_number - third_number)/distance
    return difference

In [3]:
def print_ap(third_number, difference, total_numbers):
    first_number = third_number - 2*difference
    
    ap_str = str(first_number)
    
    for i in range(1, total_numbers):
        ap_str = ap_str + " " + str((i*difference) + first_number)
    
    print ap_str

In [4]:
no_inputs = int(raw_input())

for i in range(0, no_inputs):
    ap_properties = map(int, raw_input().split())
    third_number = ap_properties[0]
    third_last_number = ap_properties[1]
    sum_ = ap_properties[2]
    
    total_numbers = find_total_numbers(third_number, third_last_number, sum_)
    
    difference = find_diff(third_number, third_last_number, total_numbers - 5)
    print_ap(third_number, difference, total_numbers)


1
3 8 55
10
1 2 3 4 5 6 7 8 9 10

In [ ]: