Hiya_
๊ฐœ๋ฐœ์ž์ทจ๐ŸŒฑ
Hiya_
Github
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (154)
    • ๐Ÿ’ปBackend (10)
      • ๋ผ์ด์ง•์บ ํ”„ (6)
      • SSAFY | ์‹ธํ”ผ (2)
      • ์‹ ํ•œDS ๊ธˆ์œตSW ์•„์นด๋ฐ๋ฏธ (2)
    • ๐Ÿ“๋ฌธ์ œ ํ’€์ด (102)
      • ๐ŸงฉBaekjoon (47)
      • ๐ŸงฉProgrammers (42)
      • ๐ŸงฉSWExpertAcademy (10)
      • ๐ŸงฉSofteer (3)
    • ๐Ÿ“‚Language (31)
      • Python (3)
      • JAVA (2)
      • SQL (6)
      • English (19)
    • โœจUseful information (5)
    • ๐Ÿ”‘Algorithms (3)
    • ๐Ÿ™Git (2)

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

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก

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

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • Union
  • sort
  • ํ† ์ต์‹œํ—˜
  • ํ† ์ตRC
  • mysql
  • ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
  • ์™„์ „ํƒ์ƒ‰
  • ์ฝ”ํ…Œ
  • UNION ALL
  • ์˜ค๋ธ”์™„
  • ๋ฆฌ์ŠคํŠธ
  • ํ† ์ต๋ฌด๋ฃŒ์ž๋ฃŒ
  • ํ† ์ต๊ธฐ์ถœ
  • BaekJoon
  • ์ •๋ ฌ
  • ํ† ์ต์ ์ˆ˜
  • ํ•ด์ปค์Šคํ† ์ต
  • ๋‹ค์ต์ŠคํŠธ๋ผ
  • 2์ฐจ์› ๋ฐฐ์—ด
  • ํ† ์ต๋ฌด๋ฃŒ๊ฐ•์˜
  • ๊ทธ๋ฆฌ๋””
  • ๋‚ด์žฅํ•จ์ˆ˜
  • Python
  • ๊ตฌํ˜„
  • ํ† ์ต๋…ํ•™
  • ํ† ์ต๊ณต๋ถ€
  • ํ•ด์ปค์ŠคํŒŒ๋žญ์ด
  • ๋ฐฑ์ค€
  • BFS
  • greedy algorithm

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

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ


Owner : ๊น€์‹ ์˜
Naver Blog

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

๊ฐœ๋ฐœ์ž์ทจ๐ŸŒฑ

๐Ÿ“๋ฌธ์ œ ํ’€์ด/๐ŸงฉBaekjoon

[Python] ๋ฐฑ์ค€ 4485 ๋…น์ƒ‰ ์˜ท ์ž…์€ ์• ๊ฐ€ ์ ค๋‹ค์ง€? | ๋‹ค์ต์ŠคํŠธ๋ผ

2023. 5. 18. 11:18

 

~๋ชฉ์ฐจ~

๋ฌธ์ œ

๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ

์ž‘์„ฑ ์ฝ”๋“œ


 

๋ฌธ์ œ

https://www.acmicpc.net/problem/4485

 

4485๋ฒˆ: ๋…น์ƒ‰ ์˜ท ์ž…์€ ์• ๊ฐ€ ์ ค๋‹ค์ง€?

์ ค๋‹ค์˜ ์ „์„ค ๊ฒŒ์ž„์—์„œ ํ™”ํ์˜ ๋‹จ์œ„๋Š” ๋ฃจํ”ผ(rupee)๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๊ฐ„ํ˜น '๋„๋‘‘๋ฃจํ”ผ'๋ผ ๋ถˆ๋ฆฌ๋Š” ๊ฒ€์ •์ƒ‰ ๋ฃจํ”ผ๋„ ์กด์žฌํ•˜๋Š”๋ฐ, ์ด๊ฑธ ํš๋“ํ•˜๋ฉด ์˜คํžˆ๋ ค ์†Œ์ง€ํ•œ ๋ฃจํ”ผ๊ฐ€ ๊ฐ์†Œํ•˜๊ฒŒ ๋œ๋‹ค! ์ ค๋‹ค์˜ ์ „์„ค ์‹œ๋ฆฌ์ฆˆ์˜ ์ฃผ

www.acmicpc.net

 

 

๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ

- ๋‹ค์ต์ŠคํŠธ๋ผ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ฐ ์œ„์น˜๋ณ„ (0, 0)์—์„œ ์ตœ์†Œ ๋น„์šฉ์„ ๊ณ„์‚ฐ

- dr, dc : ๊ฐ ์œ„์น˜์—์„œ ์•„๋ž˜, ์œ„, ์˜ค๋ฅธ์ชฝ, ์™ผ์ชฝ ์œ„์น˜๋ฅผ ๋ฐฉ๋ฌธ ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉํ–ฅํ‚ค

- graph : ๊ฐ ์œ„์น˜ ๋ฐฉ๋ฌธ์„ ์œ„ํ•ด ํ•„์š”ํ•œ ๋น„์šฉ

- distance : ๊ฐ ์œ„์น˜์—์„œ (0, 0)๊นŒ์ง€ ๊ฐ€๊ธฐ์œ„ํ•œ ์ตœ์†Œ ๋น„์šฉ, ์ดˆ๊ธฐ๋Š” ๋ฌดํ•œ์ˆ˜

 

 

์ž‘์„ฑ ์ฝ”๋“œ

import heapq
INF = int(1e9)
dr = [1, -1, 0, 0]  # down, up, right, left
dc = [0, 0, 1, -1]

test = 1
while True:
    n = int(input())
    if n == 0:
        break

    distance = [[INF]*(n+1) for _ in range(n+1)]
    graph = [[] for _ in range(n)]
    for i in range(n):
        graph[i] = list(map(int, input().split()))

    def dijkstra(y, x):
        q = []
        distance[y][x] = graph[0][0]
        heapq.heappush(q, (graph[0][0], y, x))

        while q:
            dist, row, col = heapq.heappop(q)
            if distance[row][col] < dist:
                continue
            for d in range(4):
                r = row + dr[d]
                c = col + dc[d]
                if -1 < r < n and -1 < c < n and distance[r][c] > graph[r][c] + dist:
                    distance[r][c] = dist + graph[r][c]
                    heapq.heappush(q, (distance[r][c], r, c))

    dijkstra(0, 0)
    print("Problem {}: {}".format(test, distance[n-1][n-1]))
    test += 1

 

 

 

๋„์›€์ด ๋˜์…จ๋‹ค๋ฉด ์ข‹์•„์š” ๋ˆŒ๋Ÿฌ์ฃผ์„ธ์š”๐Ÿ’š

๊ถ๊ธˆํ•œ ์ ์ด ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€ ๋‹ฌ์•„์ฃผ์„ธ์š”!

 

 

'๐Ÿ“๋ฌธ์ œ ํ’€์ด > ๐ŸงฉBaekjoon' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Python] ๋ฐฑ์ค€ 18405 ๊ฒฝ์Ÿ์  ์ „์—ผ | BFS  (0) 2023.05.20
[Python] ๋ฐฑ์ค€ 14502 ์—ฐ๊ตฌ์†Œ | BFS  (0) 2023.05.20
[Python] ๋ฐฑ์ค€ 1504 ํŠน์ •ํ•œ ์ตœ๋‹จ ๊ฒฝ๋กœ | ๋‹ค์ต์ŠคํŠธ๋ผ  (0) 2023.05.17
[Python] ๋ฐฑ์ค€ 13549 ์ˆจ๋ฐ”๊ผญ์งˆ 3 | ๋‹ค์ต์ŠคํŠธ๋ผ  (0) 2023.05.17
[Python] ๋ฐฑ์ค€ 1916 ์ตœ์†Œ๋น„์šฉ ๊ตฌํ•˜๊ธฐ | ๋‹ค์ต์ŠคํŠธ๋ผ | ์‹œ๊ฐ„์ดˆ๊ณผ  (0) 2023.05.17
    '๐Ÿ“๋ฌธ์ œ ํ’€์ด/๐ŸงฉBaekjoon' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [Python] ๋ฐฑ์ค€ 18405 ๊ฒฝ์Ÿ์  ์ „์—ผ | BFS
    • [Python] ๋ฐฑ์ค€ 14502 ์—ฐ๊ตฌ์†Œ | BFS
    • [Python] ๋ฐฑ์ค€ 1504 ํŠน์ •ํ•œ ์ตœ๋‹จ ๊ฒฝ๋กœ | ๋‹ค์ต์ŠคํŠธ๋ผ
    • [Python] ๋ฐฑ์ค€ 13549 ์ˆจ๋ฐ”๊ผญ์งˆ 3 | ๋‹ค์ต์ŠคํŠธ๋ผ
    Hiya_
    Hiya_
    ํ•˜์–€ ์ฒœ๊ณผ ๋ฐ”๋žŒ๋งŒ ์žˆ๋‹ค๋ฉด ์–ด๋””๋“  ๊ฐˆ ์ˆ˜ ์žˆ์–ด

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