n개의 계단을 올라요. 한 번에 1칸 또는 2칸을 오를 수 있을 때, 꼭대기에 도달하는 서로 다른 방법의 수를 반환해요.
결과가 커질 수 있으니 반복문으로 계산해요. 단순 재귀는 시간 초과가 나요.
예시
예시 1
예시 2
제한 사항
- 1 ≤ n ≤ 45
n번째 계단에 도달하는 방법은 (n-1)번째에서 1칸 오르거나 (n-2)번째에서 2칸 오르는 경우뿐이에요. 즉 f(n) = f(n-1) + f(n-2) 인 피보나치예요.
javascriptCopy codefunction climbStairs(n) {let a = 1;let b = 1;for (let i = 2; i <= n; i++) {[a, b] = [b, a + b];}return b;}
예시 테스트만 실행 (Cmd/Ctrl+Enter)
숨김 테스트까지 채점 (Cmd/Ctrl+Shift+Enter)
에디터를 불러오고 있어요…
코드를 작성하고Ctrl↵를 눌러 예시 테스트를 확인해 보세요.