Skip to content

Commit bfa66f6

Browse files
committed
Climbing stairs sol
1 parent 626d390 commit bfa66f6

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
class Solution {
2+
public:
3+
int climbStairs(int n) {
4+
if(n == 0 || n == 1){
5+
return 1;
6+
}
7+
vector<int> dp(n + 1);
8+
dp[0] = dp[1] = 1;
9+
for(int i = 2; i <= n; i++){
10+
dp[i] = dp[i-1] + dp[i - 2];
11+
}
12+
return dp[n];
13+
}
14+
};
15+
16+
// dp ๋ฌธ์ œ๋กœ ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•ด์ค€๋‹ค
17+
// ๊ณ„๋‹จ ๋ฐฉ์‹
18+
// 1 1๊ฐœ
19+
// 1 + 1, 2 2๊ฐœ
20+
// 1 + 1 + 1, 2 + 1, 1 + 2 3๊ฐœ
21+
// 1 + 1 + 1 + 1, 1 + 1 + 2, 1 + 2 + 1, 2 + 1 + 1, 2 + 2 ---> 5๊ฐœ
22+
// ์ฆ‰ ํ”ผ๋ณด๋‚˜์ฐŒ ์ˆ˜์—ด์˜ ํ˜•ํƒœ๋ฅผ ๋ˆ๋‹ค ์™œ๋ƒ๋ฉด 2์นธ์„ ๋›ฐ๊ธฐ ๋•Œ๋ฌธ์— ํ•œ์นธ์ „์— 1์„ ๋”ํ•˜๊ณ  ๋‘์นธ ์ „์— ๊ฒฝ์šฐ์˜ ์ˆ˜์— 2๋ฅผ ๋”ํ•ด์ฃผ๋ฉด ๋˜๊ธฐ๋•Œ๋ฌธ
23+
// ์ฆ‰ f(n) = f(n - 1) + f(n - 2)
24+
// ๋งŒ์•ฝ ๊ณ„๋‹จ ๋ฐฉ์‹์ด 3์นธ๊นŒ์ง€์ด๋ฉด ์ฆ‰ f(n) = f(n - 1) + f(n - 2) + f(n - 3)
25+
// ์‹œ๊ฐ„๋ณต์žก๋„๋Š” n๋งŒํผ ์ˆœํšŒํ•˜์—ฌ O(n)

0 commit comments

Comments
ย (0)