LeetCode Problems/Easy

๐Ÿ˜ LeetCode Easy Collections III - 3 Problems

metamong 2025. 1. 29.

0231. Power of Two / 0118. Pascal's Triangle

class Solution:
    def isPowerOfTwo(self, n: int) -> bool:
        
        if n <= 0: return False
        
        def pot(n):
            if n == 1:
                return True
            if n%2 == 1:
                return False
            
            return pot(n//2)
        
        return pot(n)

๐Ÿ˜ 0231) ํฐ problem์„ 2๋กœ ๊ณ„์† ๋‚˜๋ˆ„๋ฉฐ sub-problem์œผ๋กœ ์ž˜๊ฒŒ ์ชผ๊ฐœ๋ฉฐ ๊ณ„์† ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋‚˜๊ฐ€๋Š” ๋ฐฉ์‹์€ Recursion์„ ์‚ฌ์šฉํ•ด์•ผ ํ•จ์„ ์ง๊ด€์ ์œผ๋กœ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ๋จผ์ € n == 1 / n%2 == 1 base case๋ฅผ ์ƒ๊ฐํ•˜๊ณ  / ๊ทธ๋ ‡์ง€ ์•Š๋‹ค๋ฉด pot(n//2)๋กœ ์ž˜๊ฒŒ ์ชผ๊ฐœ์–ด ๋ฌธ์ œ๋ฅผ ํ’€์–ด๊ฐ€๋ฉด OK

class Solution:
    def generate(self, numRows: int) -> List[List[int]]:
        ans = [[1]]
        for i in range(1,numRows):
            row = []
            for j in range(0,i+1):
                if j == 0 or j == i:
                    row.append(1)
                else:
                    row.append(ans[i-1][j-1]+ans[i-1][j])
            ans.append(row)
        return ans

 

๐Ÿ˜ 0118) ๊ณต์‹์— ๋งž๊ฒŒ dp table ์ฑ„์›Œ๋‚˜๊ฐ€๋ฉด ๋œ๋‹ค.


0746. Min Cost Climbing Stairs

class Solution:
    def minCostClimbingStairs(self, cost: List[int]) -> int:
        dp = [cost[0], cost[1]]
        for i in range(2, len(cost)):
            dp.append(min(dp[-1],dp[-2])+cost[i])
        return min(dp[-1],dp[-2])

 

๐Ÿ˜ 0746) DP ๋ฌธ์ œ. ๊ฐ dp์˜ element๋Š” ํ•ด๋‹น element ๋ฒˆ์งธ์˜ stair๋ฅผ ๋ฐ˜๋“œ์‹œ ๋ฐŸ์•˜๋‹ค๊ณ  ํ–ˆ์„ ๋•Œ์˜ min cost๋กœ ์ •์˜. ๊ทธ๋Ÿฌ๋ฉด i๋ฒˆ์งธ ๊ณ„๋‹จ์„ ๋ฐŸ์•˜์„ ๋•Œ์˜ min cost dp[i]๋Š” ์•ž์„œ ๋ฐ”๋กœ ์•ž ๊ณ„๋‹จ์„ ๋ฐŸ์•˜์„ ๋•Œ์™€ / ๋ฐ”๋กœ ๋‘๋ฒˆ์งธ ์•ž ๊ณ„๋‹จ์„ ๋ฐŸ์•˜์„ ๋•Œ์˜ cost ์ค‘ ์ตœ์†Ÿ๊ฐ’์— ํ˜„์žฌ ๊ณ„๋‹จ์„ ๋ฐŸ์•˜์„ ๋•Œ์˜ ๊ฐ’์ด๋‹ค. ์ดํ›„ ์ญ‰ dp๋ฅผ ์—…๋ฐ์ดํŠธ ํ•œ ํ›„, ๋งจ ๋งˆ์ง€๋ง‰ ๊ณ„๋‹จ์„ ๋ฐŸ์•˜์„ ๋•Œ / ๋งจ ๋งˆ์ง€๋ง‰ ๋ฐ”๋กœ ์•ž ๊ณ„๋‹จ์„ ๋ฐŸ์•˜์„ ๋•Œ์˜ cost ์ค‘ ์ตœ์†Ÿ๊ฐ’์œผ๋กœ ์ •๋‹ต ๋ฆฌํ„ด


 

 

 

 

 

 

 

 

 

'LeetCode Problems > Easy' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

๐Ÿ˜ LeetCode Easy Collections II - 20 Problems  (1) 2024.09.02
๐Ÿ˜Š LeetCode Easy Collections I - 20 Problems  (1) 2024.08.05

๋Œ“๊ธ€