未必快但寫起來可以很簡潔,generator 如下
def mulRange(start, stop, times): x = start while x < stop: yield x x *= times
之後只要寫成
for x in mulRange(2, n, 2): print(x)
就可以印出小於 n 的 2 的倍數,可以用在解這題上
補充提示,另一則解題報告也有提到的: 1/x 為有限小數的充分必要條件,為 x 只能是 2 或 5 的倍數