Leetcode 알고리즘 시리즈: 계단 오르기

Unsplash에 있는 Bruno Nascimento의 사진

여보세요! 다른 알고리즘 문제로 돌아왔습니다. 오늘의 문제는 Leetcode의 상위 인터뷰 질문 - 동적 프로그래밍 장 에서 쉽습니다 .

에서 계단을 등반 :

당신은 계단을 오르고 있습니다. n정상에 도달하려면 단계가 필요 합니다.

매번 오르 1거나 걸을 수 있습니다 2. 얼마나 많은 독특한 방법으로 정상에 오를 수 있습니까?

예:

Input: n = 2
Output: 2
Explanation: There are two ways to climb to the top.
1. 1 step + 1 step
2. 2 steps
Input: n = 3
Output: 3
Explanation: There are three ways to climb to the top.
1. 1 step + 1 step + 1 step
2. 1 step + 2 steps
3. 2 steps + 1 step

내가 취하기로 결정한 첫 번째 단계는 작업할 더 많은 예제를 가질 수 있도록 몇 가지 테스트 케이스를 더 만드는 것이었습니다. Leetcode에서는 다양한 사례를 테스트할 수 있고 예상 답변을 제공할 수 있기 때문에 쉽습니다. 이 옵션이 없으면 더 많은 사례를 작성해 보겠습니다.

input: 4
Distinct Ways:
1. 1 + 1 + 1 + 1
2. 1 + 1 + 2
3. 1 + 2 + 1
4. 2 + 1 + 1
5. 2 + 2
output --> 5
input: 5
Distinct Ways:
1. 1 + 1 + 1 + 1 + 1
2. 1 + 1 + 1 + 2
3. 1 + 1 + 2 + 1
4. 1 + 2 + 1 + 1
5. 2 + 1 + 1 + 1
6. 1 + 2 + 2
7. 2 + 1 + 2
8. 2 + 1 + 1

…

피보나치 수열이라고 하면 맞습니다!! 더 많은 사례를 가지고 놀면서 이 패턴을 인식했고 이전에 피보나치 수열을 수행했기 때문에 이 문제를 훨씬 쉽게 해결하는 데 도움이 되었습니다. 피보나치 수에 익숙하지 않다면 여기 에서 읽어보십시오 . 기본적으로 시퀀스에서 앞의 2개의 숫자의 합인 숫자입니다. 그래서 내가 한 일은 while 루프 내부에 피보나치 수열을 설정 하고 while 루프가 입력으로 제공된 횟수만큼 실행되도록 한 것입니다.

var climbStairs = function(n) {
    let total = 0
    let first = 0
    let second = 1
    let i = 0
    
    while (i < n) {
        total = first + second
        first = second
        second = total
        i++
    }
    
    return total
};

이 문제에 접근하는 다른 방법이 있거나 이 알고리즘을 해결하는 방법이 있다면 내 코드를 어떻게 개선할 수 있는지 확실히 듣고 싶습니다. 어려움을 겪고 있다면 이것이 해결하는 데 도움이되기를 바랍니다!

앞으로 더 많은 LeetCode 솔루션을 기대하십시오!

LeetCode 시리즈:

1. 중복 포함
2. 정렬된 배열 병합
3. 높이 검사기
4. 유효한 회문
5. 해피 넘버
6. 가장 긴 공통 접두사
7. 계단 오르기
8. 유효한 괄호
9. 파스칼의 삼각형
10. 최대 하위 배열

plainenglish.io 에서 더 많은 콘텐츠

Suggested posts

도메인 이름에 대한 정보 찾기

Brian P. Hogan의 Small, Sharp 소프트웨어 도구에서 발췌

도메인 이름에 대한 정보 찾기

facebook.com에 요청하면 컴퓨터가 도메인 이름을 조회하여 해당 도메인 이름을 IP 주소로 변환하므로 컴퓨터가 해당 연결을 만들 수 있습니다.

노코드 혁명: Webflow, Framer, Bubble.io,

노코드 혁명: Webflow, Framer, Bubble.io,

이 놀라운 노코드 플랫폼의 미개발 잠재력을 활용하면서 스릴 넘치는 혁신과 성공의 여정을 시작하십시오. 뛰어난 여성 기업가인 Sapna에 대한 이야기를 들려드리겠습니다.

Related posts

대명사는 정말 무섭다

너무 자주 그렇듯 갑자기 와닿는다 다시 중간쯤이야 <아니, 태평양에 있는 사람 말고 마룬, 카니발에 있는 사람> 모든 헤드라인이 시끄러워…..

취하기의 아이의 첫 번째 책

취하기의 아이의 첫 번째 책

(경고- 이것은 유쾌하게 전복하려는 풍자입니다. 절대 어린이용이 아닙니다.) 당신은 엄마와 아빠가 부엌에 숨어서 그 냄새나는 담배를 피우는 것을 본 적이 있습니다. 그들은 당신에게 말합니다.

FY24의 탄소 제거 자금 조달

경로 전반에 걸친 Carbon180의 세출 요청 내역

FY24의 탄소 제거 자금 조달

Alyson Lee, 공무 관리 고문 연방 정부의 연간 예산 책정 과정은 이산화탄소 제거(CDR) 기금 마련을 위한 노력의 핵심입니다. 매년 Carbon180은 내년의 자금 흐름을 안내하기 위해 다양한 의회 사무소에 요청을 제출합니다.

도메인 이름에 대한 정보 찾기

Brian P. Hogan의 Small, Sharp 소프트웨어 도구에서 발췌

도메인 이름에 대한 정보 찾기

facebook.com에 요청하면 컴퓨터가 도메인 이름을 조회하여 해당 도메인 이름을 IP 주소로 변환하므로 컴퓨터가 해당 연결을 만들 수 있습니다.