這最終應該用JavaScript編寫。但是我覺得我不應該直接輸入任何代碼,直到我的算法清晰了,而不是!查找操作序列
問題:從1開始,編寫一個給定數字的函數會返回一個只包含"+5"
或"*3"
的操作序列,這些操作會產生有問題的數字。
我的基本算法:
- 獲取數
- 如果數字爲1
回報1. - 否則,如果我們超越數
返回-1。 - 否則繼續嘗試到
"+5"
或"*3"
,直到達到數量(假設可達)。
我的問題是與步驟#4:我看到有兩條路可以走,這將帶給我的號碼有問題(目標),無論是"+5"
OR "*3"
,但對於13號可以是通過MIXTURE找到兩條路徑?我只能做一件事或另一件事! 我怎麼知道我應該走哪條路以及我應該走多少路?我將如何在路徑之間來回跳動?
你檢查了嗎? http://stackoverflow.com/questions/17652190/how-to-get-the-target-number-with-3-or-5-operations-without-recursion –