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

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

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

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

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

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

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

Frontend-Deep-Dive

[BOJ] ๋ฐฑ์ค€ 5014 ์Šคํƒ€ํŠธ๋งํฌ / BFS
Problem_Solving

[BOJ] ๋ฐฑ์ค€ 5014 ์Šคํƒ€ํŠธ๋งํฌ / BFS

2021. 1. 13. 16:42

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

 

 

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

๊ฐ•ํ˜ธ๊ฐ€ ์—˜๋ฆฌ๋ฒ ์ดํ„ฐ๋ฅผ ํƒ€๊ณ  S์ธต์—์„œ G์ธต์œผ๋กœ ๊ฐ€๊ธฐ ์œ„ํ•œ ์ตœ์†Œ ์ด๋™ ํšŸ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.

์ด ๋ฌธ์ œ์˜ ํŠน์ง•์€ ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์˜ ๋ฒ„ํŠผ๋งŒ ๋ˆŒ๋Ÿฌ Up ๋˜๋Š” Down ํฌ๊ธฐ๋งŒํผ๋งŒ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด ๋ชฉ์ ์ง€๊นŒ์ง€ ์ตœ์†Œ ํšŸ์ˆ˜๋กœ ์ด๋™ํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

visited ๋ฐฐ์—ด์„ ๋Œ€์‹ ํ•˜์—ฌ cnt ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ–ˆ๋‹ค.

cnt ๋ฐฐ์—ด์€ ๊ธฐ๋ณธ๊ฐ’์ด -1๋กœ ์ดˆ๊ธฐํ™”๋˜์–ด์žˆ๊ณ , ์ถœ๋ฐœ์„ ์€ 0์œผ๋กœ ์„ค์ •์„ ํ•œ๋‹ค.

Up ๋˜๋Š” Down ์„ ํƒ์„ ํ์— ๋„ฃ์„ ๋•Œ๋งˆ๋‹ค cnt ๋ฐฐ์—ด์— ๊ทธ ์œ„์น˜๊ฐ’์„ ์ด์ „ ์œ„์น˜ ๊ฐ’ +1๋กœ ์„ค์ •ํ•œ๋‹ค.

 

์ตœ์ข… ๋ชฉ์ ์ง€์ธ g๊นŒ์ง€ ๋„์ฐฉํ•˜๋Š” ์ตœ์†Œ ์ด๋™ ํšŸ์ˆ˜๊ฐ€ cnt[g]์— ๊ตฌํ•ด์ง€๊ฒŒ ๋œ๋‹ค.

 

 

 

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

 

from collections import deque


def solve():
    global total, kangho, up, down, cnt
    queue = deque()
    queue.append(kangho)
    cnt[kangho] = 0
    
    while queue:
        now = queue.popleft()
        for next in (now + up, now - down):
            if 1 <= next <= total:
                # ์•„์ง ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ์ธต
                if cnt[next] == -1:
                    cnt[next] = cnt[now] + 1
                    queue.append(next)


total, kangho, dest, up, down = map(int, input().split())
cnt = [-1] * (total+1)
solve()

# ์—ฌ์ „ํžˆ -1์ด๋ผ๋ฉด ๊ทธ ์ธต์— ๊ฐˆ ์ˆ˜ ์—†๋‹ค๋Š” ๋œป
if cnt[dest] == -1:
    print("use the stairs")
else:
    print(cnt[dest])
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

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

[BOJ] ๋ฐฑ์ค€ 2573 ๋น™์‚ฐ / BFS  (0) 2021.01.14
[BOJ] ๋ฐฑ์ค€ 2468 ์•ˆ์ „ ์˜์—ญ / BFS  (0) 2021.01.13
[BOJ] ๋ฐฑ์ค€ 13549 ์ˆจ๋ฐ”๊ผญ์งˆ 3 / BFS  (0) 2021.01.12
[BOJ] ๋ฐฑ์ค€ 13913 ์ˆจ๋ฐ”๊ผญ์งˆ 4 / BFS  (0) 2021.01.12
[BOJ] ๋ฐฑ์ค€ 12851 ์ˆจ๋ฐ”๊ผญ์งˆ 2 / BFS  (0) 2021.01.12
    'Problem_Solving' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [BOJ] ๋ฐฑ์ค€ 2573 ๋น™์‚ฐ / BFS
    • [BOJ] ๋ฐฑ์ค€ 2468 ์•ˆ์ „ ์˜์—ญ / BFS
    • [BOJ] ๋ฐฑ์ค€ 13549 ์ˆจ๋ฐ”๊ผญ์งˆ 3 / BFS
    • [BOJ] ๋ฐฑ์ค€ 13913 ์ˆจ๋ฐ”๊ผญ์งˆ 4 / BFS
    glowing713
    glowing713

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