Python 題目

PROBLEM

因數分解(Finding Factors)

#python #程式碼

def find_factors(n):
    factors = []
    for i in range(1, int(n ** 0.5) + 1):  # 只需檢查到 sqrt(n)
        if n % i == 0:
            factors.append(i)
            if i != n // i:  # 避免平方數重複
                factors.append(n // i)
    return sorted(factors)

print(find_factors(60))  # 🔹 輸出: [1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60]