愛因斯坦階梯問題

2021-09-07 10:24:47 字數 613 閱讀 3640

#include

#include

intmain()

}return0;

}

還有一種思路,複習做題時遇到的tat

int ladders =7;

while

(ladders%3!=

2|| ladders%5!=

4|| ladders%6!=

5)ladders+=14

;printf

("%d\n"

,ladders)

;

窮舉遍曆法,效率太低,改進一下:

這裡有個明顯的規律:階梯的總數分別除以2、3、5、6餘數分別為1、2、4、5,能同時滿足這四個條件的最小階梯數是29,而2,3,5,6的最小公倍數為30,因此,這個數必須是30的倍數-1。

#include

intmain

(int argc,

char

*ar**)

printf

("result is: %d\n"

,i);

return0;

}

愛因斯坦階梯問題

愛因斯坦曾經提出過這樣一道有趣的數學題 有乙個長階梯,若每步上2階,最後剩下1階 若每步上3階,最後剩2階 若每步上5階,最後剩下4階 若每步上6階,最後剩5階 只有每步上7階,最後剛好一階也不剩。請問該階梯至少有多少階。我們假設階梯共有n階,我們可以很快的列出下面的式子 n mod 2 1 n m...

python 愛因斯坦階梯問題

解釋 設有台階若干,每跨2階,最後餘1階,跨3階餘2階,跨5階餘4階,跨6階餘5階,跨7階正好到達階梯頂部。分析 先假設有i,餘2等於1,餘3等於2,以此類推。1 i 2 1and i 3 2and i 5 4and i 6 5and i 7 0符合以上 即可。可以使用while和for語句進行書寫...

C語言 愛因斯坦的階梯問題

愛因斯坦曾經提出過這樣一道有趣的數學題 有乙個長階梯,若每步上2階,最後剩下1階 若每步上3階,最後剩2階 若每步上5階,最後剩下4階 若每步上6階,最後剩5階 只有每步上7階,最後剛好一階也不剩。請問該階梯至少有多少階 int i 7 int times 1000 while i 2 1 i 3 ...