✔ 最佳答案
激氣, 我晚了兩小時回答, 做不了第一個 :'(
第一條樓上的答案是對的, N/12的最少值的確是108, 解釋看起來不太清晰, 所以我補充了些少。
己知12的質因數連乘式是2 x 2 x 3, 因為N是一個平方數的平方,因此,假設N是M的平方,而M是平方數,所以又假設M是P的平方,最後N = P X P X P X P
N有因數12 = 2 x 2 x 3, 所以P不可能不能整除3的。要是P真的不能整除3 ,那麼N也不可以,但N能整除12,這是不可能的,所以P一定能整除3. 同樣道理P也一定能整除2, 所以|P|最少是6. (其實P也可能是負數,即-6, 不過這對N沒有影響)
試 P = 6, N = P X P X P X P = 6 X 6 X 6 X 6 = 1296 = 12 X 108, 所以 P = 6 是可行的,而P最少又等如6,所以最少的 N / 12 = 108.
第二條樓上沒答,就是我的好機會 :),其實呢一條比較特別的地方就是它需要比較高深的思考方式才能完成.這想法就是動態規劃 (Dynamic Programming),別看它名字有Programming這個字就一定要寫程式,其實是可以不用的。
首先我們不考慮第6級樓梯不可以踏這個限制,我們先考慮最簡單的case,
只有一級樓梯: 只有一個走法。
只有兩級樓梯: 有兩個走法,你可以一步一步的走,或者一次走完這兩級。以下簡稱為1+1 or 2
只有三級樓梯: 有四個走法, 1+1+1 or 1 + 2 or 2 + 1 or 3
那如果有四級怎麼辦哩, 這就先走一步, 就想想後來三步怎走, 又或者先走兩步.再想想後來兩步怎走, 最後就是立即走三步再想怎走餘下的一步。
所以方法如下:
1 + 1 + 1 + 1
1 + 1 + 2
1 + 2 + 1
1 + 3
2 + 1 + 1
2 + 2
3 + 1
共7個走法。
這時你會想, 要全列出走10步的不就煩死了。對的, 的確煩死。很幸運的,我們只需要列出有多少方法走就夠了, 不用列出所以方法。所以如果有5級樓梯的話, 我們可以用S(n) 代表有多少種方法走n級樓梯。之前的討論已計出
S(1) = 1
S(2) = 2
S(3) = 4
S(4) = 7
那S(5)呢, 我們可以先走1步, 然後有S(4)種方法走, 也可以先走2步, 然後有S(3) 種方法走, 最後可以先走3步, 再有S(2)種方法走, 所以總共有
S(5) = S(4) + S(3) + S(2) = 13種方法走。
如此推論, 我們可算出:
S(6) = S(5) + S(4) + S(3) = 13 + 7 + 4 = 24
S(7) = S(6) + S(5) + S(4) = 24 + 13 + 7 = 44
S(8) = S(7) + S(6) + S(5) = 44 + 24 + 13 = 81
S(9) = S(8) + S(7) + S(6) = 81 + 44 + 24 = 149
S(10) = S(9) + S(8) + S(7) = 149 + 81+ 44 = 274
嘩, 把274種方法都列出來肯定煩死 :p 幸好我們不用。最後把踏著6的除掉就是了。
怎樣除呢?
就是S(10) - S(6) x S(4) = 106, 至於這一個的原因是很簡單的, 踏過6的方法總是有辦法寫成(...) + (...), 前面是6後面是4, 那麼前面有多少種寫法跟後面多少種寫法相乘就是了。
最後一條很簡單,樓上答得可以,這裏我想問清楚「反複依次拉」的定義。如果只是 A B C D E F G A B C D E F G 的話,樓上答的很清楚,就不補充了。但我有一個想法,題目會不會是指A B C D E F G F E D C B A B C D E F G 這種反復的方法呢,如果是,A和G的結果就不一樣了。留意如果這樣其實每拉AB-FGF-BAB-FGF-B(24步)之後所有燈都會維持不變。2003 = 24 x 83 + 11, 所以只需考慮拉11下後是怎樣就可以。
拉頭7下後, 開的變關, 關的變開, 所以
7: AXCXEXG (X就是關了)
8: AXCXEFG
9: AXCXXFG
10: AXCDXFG
11: AXXDXFG
所以最後開的就是A D F G