We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent e4866f6 commit b6c6d48Copy full SHA for b6c6d48
climbing-stairs/grapefruitgreentealoe.js
@@ -0,0 +1,42 @@
1
+//특정 지점까지 얼마나 많은 개수의 길이 존재할까
2
+//갈 수 있는 방법은 1 혹은 2칸씩 오를 수 있다.
3
+
4
+/* 1. dp로 풀기.
5
+점화식은 이렇다.
6
+dp[n] = d[n-1] + d[n-2]
7
+*/
8
9
+var climbStairs = function(n) {
10
+ if (n === 1) return 1;
11
+ if (n === 2) return 2;
12
13
+ const dp = Array(n + 1).fill(0);
14
+ dp[1] = 1;
15
+ dp[2] = 2;
16
17
+ for (let i = 3; i <= n; i++) {
18
+ dp[i] = dp[i - 1] + dp[i - 2];
19
+ }
20
21
+ return dp[n];
22
+};
23
24
+//시간복잡도: O(n)
25
+//공간복잡도: O(n)
26
27
+//2. 메모리 아끼기
28
+//dp배열 없이 변수로만 작성하기
29
30
31
+ let a = 1, b = 2;
32
33
+ let temp = a + b;
34
+ a = b;
35
+ b = temp;
36
37
+ return b;
38
39
40
41
42
+//공간복잡도: O(1)
0 commit comments