注意這題k會超出int範圍,所以不能用存陣列解法
這裡給出我的另一個解法
觀察1. 本題數列皆>0
觀察2. 當k為偶數時 f(k) = 1 + f(k/2) > 1
觀察3. 當k為奇數時 f(k) = 1 / f(k-1),注意k-1為偶數,所以f(k-1)>1,所以f(k)<1
所以可以知道a/b>1時k為偶數,a<b時k為奇數(a=b則不用多講k=1)
當k為偶數時可以算出f(k/2) = f(k) - 1
k為奇數時可以算出f(k-1) = 1 / f(k)
逐步把題目給的f(k)降至1,此時k=1
再回推當時的過程,例如第一次把k除2了,在最後要把k乘回2;第一次把k減1了,在最後要把k加回1
回推完即為答案
*/