1. 程式人生 > 其它 >藍橋杯—每日一題—質因數分解

藍橋杯—每日一題—質因數分解

技術標籤:藍橋杯演算法

文章目錄

題目描述

求出區間[a,b]中所有整數的質因數分解。
提示
先篩出所有素數,然後再分解。
資料規模和約定
2< =a< =b< =10000

題目求解

#獲取使用者輸入
a,b = map(int,input().split(" "))

#判斷素數
def judge(n):
    flag = True
    for i in range(2,n):
        if n%i==0:
            flag = False
            break
        else
: continue return flag # 分解 def depose(n): depose_result = 0 for i in range(2,n+1): if n%i==0: depose_result = i # print(depose_result) break else: continue return depose_result def start(): for
i in range(a,b+1): result_list = [] n=i while n>=1: if (judge(n)==True)|(n==2): result_list.append(n) break else: temp = depose(n) result_list.append(temp) n = n//temp print
("{0}=".format(i),end="") temp2 = len(result_list) count = 1 for number in result_list: if count!=temp2: print("{0}*".format(number),end="") count = count + 1 elif count == temp2: print(number) start()

輸出結果