Divide the number decomposition factor between 101 and 200
Log = {}defprime_log (num):ifNum < 3: return0 Flags= [True] *num flags[0], flags[1] =false, False forIinchRange (2, int (num**0.5+1)): ifFlags[i]: flags[i*I:NUM:I] = [False]*len (flags[i*i:num:i])returnFlagsprimes= Prime_log (201)#Print primesdefparse_int (num):ifNuminchlog:returnLog[num]ifPrimes[num]: log[num]=[num]return[num] res= [] forIinchRange (2, num/2+1): if notnum%I:ifPrimes[i]: res.append (i) e= log[num/i]ifnum/iinchLog andLen (log[num/i])ElseParse_int (num/i) forJinchE:res.append (j) Break forIinchRes:ifNuminchlog:log[num].append (i)Else: Log[num]=[] Log[num].append (i)returnResdefMain (): forIinchRange (101, 200): Parse_int (i)if notLen (Log[i]):PrintSTR (i) +'={}\n'. Format (i)Else: Print '*'. Join (Map (str, log[i)) +'={}\n'. Format (i)if __name__=='__main__': Main ()#Print Parse_int (108)## Print Log
[Algorithm] decomposition factor