여기서 n번째 피보나치 항이 10의 배수인지 확인하는 효율적인 방법을 살펴보겠습니다. 피보나치 항이 {0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987}이라고 가정합니다. 따라서 여기서 15번째 피보나치 수(0부터 계산)는 10으로 나누어집니다. 16의 경우 true를 반환합니다.
가장 간단한 방법 중 하나는 주어진 항까지 피보나치 수를 생성하고 10으로 나눌 수 있는지 확인하는 것입니다. 하지만 이 솔루션은 더 큰 항목에는 작동하지 않기 때문에 좋지 않습니다.
또 다른 좋은 방법은 다음과 같습니다 -
피보나치 용어- 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987
이것들 숫자(굵은 글씨로 표시)는 2로 나누어집니다. 3개의 피보나치 항으로 구분됩니다. 마찬가지로 확인해 보세요 -
피보나치 항: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987
모두 5개 항은 모두 5로 나눌 수 있습니다. 이제 3과 5의 LCM은 15입니다. 따라서 매 15번째 피보나치 항은 10으로 나누어진다고 말할 수 있습니다.
아이디어를 이해하기 위해 알고리즘을 살펴보겠습니다.Begin if term is divisible by 15, then return true end if return false End
#include<iostream> using namespace std; bool fiboDivTen(int term) { if(term % 15 == 0){ return true; } return false; } int main() { int term = 45; if (fiboDivTen(term)) cout << "Divisible"; else cout << "Not Divisible"; }
Divisible
위 내용은 n번째 피보나치 수가 10의 배수인지 확인하는 효율적인 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!