직사각형의 정사각형 둘레
입력은 정수이며 다음 이미지에 표시된 것과 같은 방식으로 배치된 n + 1 정사각형이 있을 때 직사각형의 모든 정사각형 둘레의 합을 계산해야 합니다.
위의 이미지에는 매우 독특한 방식으로 장착된 6개의 사각형이 있습니다. 사각형의 변은 언뜻 보기에는 무작위로 보이지만 실제로는 대부분의 멍청한 코더도 알고 있는 피보나치 수열입니다.
가장 안쪽 원의 변은 1이고 진행하는 사각형의 변은 1, 2, 3, 5, 8입니다.
1, 1, 2, 3, 5, 8
모르는 경우 피보나치 수열이 무엇인지 - 피보나치 수열은 각 숫자가 이전 두 수의 합인 수열입니다. - Wikipedia
접근하다:
연산:
function fib(num) {
let a=1;
let b=1;
let s=0;
if(num===0)
return 1;
while(num>1) {
let c=a+b;
s+=c;
a=b;
b=c;
num-=1;
}
return s+2;
}
이 함수는 숫자 'num'을 입력으로 사용합니다.
let a=1;
let b=1;
let s=0;
if(num===0)
return 1;
while(num>1) {
let c=a+b;
s+=c;
a=b;
b=c;
num-=1;
}
루프는 1-2행에서 언급된 피보나치 수열의 처음 두 숫자를 이미 초기화하고 선언했기 때문에 num-2번 실행됩니다.
return s+2;
console.log( 4*fib(n));
이 문제는 피보나치 수 생성 개념과 약간의 기본 수학(예: 정사각형의 둘레 공식)을 사용합니다.
Reference
이 문제에 관하여(직사각형의 정사각형 둘레), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/s_vibhor/perimeters-of-squares-in-a-rectangle-1o5n텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)