glowing713
Frontend-Deep-Dive
glowing713
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (97)
    • Languages (11)
      • JavaScript ๐Ÿ’› (3)
      • Python ๐Ÿ (4)
      • Java โ˜•๏ธ (3)
      • Swift ๐Ÿงก (1)
    • Computer_Science (1)
      • Computer_Network ๐Ÿ•ธ (1)
    • Web_Frontend (4)
      • Vue.js (1)
    • Problem_Solving (76)
    • Server (1)
      • Spring ๐Ÿ€ (1)
    • AI (2)
      • NLP ๐Ÿ—ฃ (1)
      • AI_Math โž— (1)
    • ๊ฐœ๋ฐœํ™˜๊ฒฝ ๊พธ๋ฏธ๊ธฐ โœŒ (1)
    • ์ƒ๊ฐ์ •๋ฆฌ โœ๐Ÿป (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ๐Ÿง‘๐Ÿปโ€๐Ÿ’ปGithub

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ์™„์ „ํƒ์ƒ‰
  • ์ด๋ถ„ํƒ์ƒ‰
  • Algorithm
  • ์นด์นด์˜ค ๊ธฐ์ถœ
  • BOJ
  • brute-force
  • Python
  • ๋™์ ๊ณ„ํš๋ฒ•
  • mst
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
  • 2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‹ญ
  • boostcampaitech
  • c++
  • binary search
  • Baekjoon
  • Stack
  • DP
  • Java
  • bfs
  • ps

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
glowing713

Frontend-Deep-Dive

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋“ฑ๊ตฃ๊ธธ / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)
Problem_Solving

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋“ฑ๊ตฃ๊ธธ / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)

2021. 3. 11. 16:28

์ด๋ฏธ์ง€๋ฅผ ํด๋ฆญํ•˜๋ฉด ๋ฌธ์ œ ์‚ฌ์ดํŠธ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

 

 

๐Ÿ’ญ ๋ฌธ์ œ ์ดํ•ด

 

๊ฒฉ์ž๋ฅผ ์˜ค๋ฅธ์ชฝ๊ณผ ์•„๋ž˜์ชฝ์œผ๋กœ ์ด๋™ํ•˜๋ฉฐ ์ตœ๋‹จ ๊ฒฝ๋กœ์˜ ์ˆ˜๋ฅผ ์ธก์ •ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.

DP๋กœ ํ’€ ์ˆ˜ ์žˆ๊ณ , ๋ฌผ์ด ์žˆ๋Š” ๋ถ€๋ถ„์„ ์–ด๋–ป๊ฒŒ ์ฒดํฌํ•˜๋А๋ƒ๊ฐ€ ํฌ์ธํŠธ์ธ ๋ฌธ์ œ์ด๋‹ค.

 

 

 

๊ตฌํ˜„ ์–ธ์–ด: Python

 

def solution(m, n, puddles):
    maps = [[0]*(m+1) for _ in range(n+1)]
    dp = [[0]*(m+1) for _ in range(n+1)]
    # ๋ฌผ ์ฒดํฌ
    for pud in puddles:
        maps[pud[1]][pud[0]] = -1
        
    dp[1][0] = 1  # ์‹œ์ž‘์ง€์ ์€ 1
    for i in range(1, n+1):
        for j in range(1, m+1):
            if maps[i][j] == -1:
                dp[i][j] = 0
            else:
                dp[i][j] = (dp[i-1][j] + dp[i][j-1]) % 1000000007
    return dp[n][m]

 

maps๋Š” ํ˜„์žฌ ์ง€๋„์˜ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฐ์—ด๋กœ์„œ, ๋ฌผ์ด ์žˆ๋Š” ์œ„์น˜๋ผ๋ฉด ๊ทธ ๊ณณ์„ -1๋กœ ๊ธฐ๋กํ•ด๋‘”๋‹ค.

dp๋Š” ์ด๋™ ๊ฒฝ๋กœ๋ฅผ ๊ธฐ๋กํ•˜๋Š” ๋ฐฐ์—ด๋กœ์„œ, ๋ฌผ์ด ์žˆ๋Š” ์œ„์น˜๋ผ๋ฉด ๊ทธ ๊ณณ์€ 0์ด ๋œ๋‹ค. (์ด๋™ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๋œป)

 

0 0 0 0 0
0 1      
0   0    
0        

 

์˜ˆ์ œ์— ์ฃผ์–ด์ง„ ๊ฒฝ๋กœ์˜ ์ƒํƒœ์ด๋‹ค.

0ํ–‰๊ณผ 0์—ด์€ ์ด๋™ํ•  ์ˆ˜ ์—†๋Š” ๊ณต๊ฐ„์œผ๋กœ์„œ 0์œผ๋กœ ์ฑ„์›Œ์ง€๊ฒŒ ๋˜๊ณ , ๋ฌผ๋กœ ์ฑ„์›Œ์ง„ ๊ณต๊ฐ„ ๋˜ํ•œ 0์ด ๋œ๋‹ค.

 

 

0 0 0 0 0
0 1 1 1 1
0 1 0 1 2
0 1 1 2 4

 

(1, 1) ์œ„์น˜๋ถ€ํ„ฐ ์ฃผ์–ด์ง„ ๊ท€๋‚ฉ์‹์— ๋”ฐ๋ผ ์ฑ„์›Œ๋‚˜๊ฐ€๋ฉด ์ตœ์ข… ๋ชฉ์ ์ง€์ธ (n, m)์— ์ตœ๋‹จ๊ฒฝ๋กœ์˜ ์ˆ˜๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'Problem_Solving' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ฐ€์žฅ ํฐ ์ˆ˜ / ์ •๋ ฌ  (0) 2021.03.11
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋„๋‘‘์งˆ / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)  (0) 2021.03.11
[BOJ] ๋ฐฑ์ค€ 1535 ์•ˆ๋…• / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)  (0) 2021.03.11
[BOJ] ๋ฐฑ์ค€ 2512 ์˜ˆ์‚ฐ / ์ด๋ถ„ํƒ์ƒ‰  (0) 2021.02.11
[BOJ] ๋ฐฑ์ค€ 1764 ๋“ฃ๋ณด์žก / ์ด๋ถ„ํƒ์ƒ‰  (0) 2021.02.11
    'Problem_Solving' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ฐ€์žฅ ํฐ ์ˆ˜ / ์ •๋ ฌ
    • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋„๋‘‘์งˆ / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)
    • [BOJ] ๋ฐฑ์ค€ 1535 ์•ˆ๋…• / ๋™์  ๊ณ„ํš๋ฒ•(Dynamic-Programming)
    • [BOJ] ๋ฐฑ์ค€ 2512 ์˜ˆ์‚ฐ / ์ด๋ถ„ํƒ์ƒ‰
    glowing713
    glowing713

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”