Hiya_
๊ฐœ๋ฐœ์ž์ทจ๐ŸŒฑ
Hiya_
Github
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (155) N
    • ๐Ÿ’ปBackend (1) N
      • ๋ผ์ด์ง•์บ ํ”„ (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 ALL
  • ๋ฆฌ์ŠคํŠธ
  • sort
  • ํ† ์ต๊ณต๋ถ€
  • ํ† ์ต๋ฌด๋ฃŒ๊ฐ•์˜
  • Union
  • 2์ฐจ์› ๋ฐฐ์—ด
  • ํ† ์ตRC
  • BaekJoon
  • mysql
  • ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
  • ์ •๋ ฌ
  • ๊ทธ๋ฆฌ๋””
  • ๋‚ด์žฅํ•จ์ˆ˜
  • ์˜ค๋ธ”์™„
  • ํ•ด์ปค์ŠคํŒŒ๋žญ์ด
  • Python
  • ๋‹ค์ต์ŠคํŠธ๋ผ
  • ํ† ์ต๊ธฐ์ถœ
  • ํ† ์ต์‹œํ—˜
  • ํ† ์ต์ ์ˆ˜
  • BFS
  • greedy algorithm
  • ์ฝ”ํ…Œ
  • ์™„์ „ํƒ์ƒ‰
  • ํ† ์ต๋…ํ•™

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

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ


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

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

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

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

[Python] ๋ฐฑ์ค€ 1463 1๋กœ ๋งŒ๋“ค๊ธฐ | DP

2023. 5. 15. 21:14

 

~๋ชฉ์ฐจ~

๋ฌธ์ œ

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

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


 

๋ฌธ์ œ

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

 

1463๋ฒˆ: 1๋กœ ๋งŒ๋“ค๊ธฐ

์ฒซ์งธ ์ค„์— 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 106๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค.

www.acmicpc.net

 

 

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

- ์ „ํ˜•์ ์ธ ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฌธ์ œ์ด๋‹ค.

- ๊ฐ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ๋ฅผ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด์„œ ํ•„์š”ํ•œ ์ตœ์†Œ ์—ฐ์‚ฐ์„ ์ €์žฅํ•  ๋ฆฌ์ŠคํŠธ๋ฅผ ์ž…๋ ฅ ๋ฐ›์€ N ํฌ๊ธฐ๋กœ ์ƒ์„ฑ.

- ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ

    ๋ฐ”ํ…€์—…(BottomUp) : ๋ฐ˜๋ณต๋ฌธ

    ํƒ‘๋‹ค์šด(TopDown) : ์žฌ๊ท€

 

๋ฐ”ํ…€์—… ๋ฐฉ์‹์ด ์Šคํƒ ํฌ๊ธฐ ์ œํ•œ์œผ๋กœ๋ถ€ํ„ฐ ์ž์œ ๋กœ์›€์œผ๋กœ, ์ฒ˜์Œ ์—ฐ์‚ฐ์„ ์ €์žฅํ•˜์—ฌ ์ดํ›„ ๋™์ผํ•œ ์—ฐ์‚ฐ ๋ฐœ์ƒ์‹œ

์ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘๋ณต ์—ฐ์‚ฐ์„ ํ”ผํ•  ์ˆ˜ ์žˆ๋‹ค.

 

- ์ตœ์ข…์ ์œผ๋กœ 1์„ ๋งŒ๋“œ๋Š” ํ”„๋กœ๊ทธ๋žจ์ด๋ฏ€๋กœ 2๋ถ€ํ„ฐ ๊ตฌํ•˜๋ ค๋Š” n๊นŒ์ง€ ๊ฐ ์ˆ˜๋ฅผ ์œ„ํ•œ ์ตœ์†Œ ์—ฐ์‚ฐ์„ ๊ตฌํ•œ๋‹ค.

- ์ฆ‰ 2๋ผ๋ฉด -1์„ ๋นผ๋Š” ์—ฐ์‚ฐ๊ณผ 2๋กœ ๋‚˜๋ˆ„๋Š” ์—ฐ์‚ฐ์„ ํ•˜๋ฉด ๋ชจ๋‘ ํ•œ ๋ฒˆ์˜ ์—ฐ์‚ฐ์œผ๋กœ ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ

  ์ตœ์ข…์ ์œผ๋กœ dp[2]์— 1์ด๋ผ๋Š” ๊ฐ’์ด ์ž…๋ ฅ๋œ๋‹ค.

- ์ด๋ฅผ ์—ฐ์‡„์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•จ์œผ๋กœ์จ dp[n]์—๋Š” n์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•œ ์ตœ์†Œ ์—ฐ์‚ฐ์˜ ๊ฐ’์ด ์ €์žฅ๋œ๋‹ค.

 

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

 

n = int(input())
dp = [0]*(n+1)  # ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ๋ฅผ ์œ„ํ•ด์„œ ํ•„์š”ํ•œ ์ตœ์†Œ ์—ฐ์‚ฐ ํšŸ์ˆ˜ ์ €์žฅ

for i in range(2, n+1):  # ๋ฐ”ํ…€์—… ๋ฐฉ์‹
	dp[i] = dp[i-1] + 1  # -1 1ํšŒ ์ˆ˜ํ–‰
    if i % 3 == 0:
    	dp[i] = min(dp[i//3] + 1, dp[i])  # 3์˜ ๋ฐฐ์ˆ˜๋ผ๋ฉด
    if i % 2 == 0:
    	dp[i] = min(dp[i//2] + 1, dp[i])  # 2์˜ ๋ฐฐ์ˆ˜๋ผ๋ฉด
        
print(dp[n])

 

 

 

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

 

 

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

[Python] ๋ฐฑ์ค€ 18352 ํŠน์ • ๊ฑฐ๋ฆฌ์˜ ๋„์‹œ ์ฐพ๊ธฐ | ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜  (0) 2023.05.16
[Python] ๋ฐฑ์ค€ 1753 ์ตœ๋‹จ ๊ฒฝ๋กœ | ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜  (0) 2023.05.16
[Python] ๋ฐฑ์ค€ 9663 N-Queen | ์‹œ๊ฐ„์ดˆ๊ณผ  (2) 2023.04.18
[Python] ๋ฐฑ์ค€ 10819 ์ฐจ์ด๋ฅผ ์ตœ๋Œ€๋กœ | ์ˆœ์—ด/์กฐํ•ฉ | Permutations/Combinations  (0) 2023.03.02
[Python] ๋ฐฑ์ค€ 2089 -2์ง„์ˆ˜  (0) 2023.03.02
    '๐Ÿ“๋ฌธ์ œ ํ’€์ด/๐ŸงฉBaekjoon' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [Python] ๋ฐฑ์ค€ 18352 ํŠน์ • ๊ฑฐ๋ฆฌ์˜ ๋„์‹œ ์ฐพ๊ธฐ | ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜
    • [Python] ๋ฐฑ์ค€ 1753 ์ตœ๋‹จ ๊ฒฝ๋กœ | ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜
    • [Python] ๋ฐฑ์ค€ 9663 N-Queen | ์‹œ๊ฐ„์ดˆ๊ณผ
    • [Python] ๋ฐฑ์ค€ 10819 ์ฐจ์ด๋ฅผ ์ตœ๋Œ€๋กœ | ์ˆœ์—ด/์กฐํ•ฉ | Permutations/Combinations
    Hiya_
    Hiya_
    ํ•˜์–€ ์ฒœ๊ณผ ๋ฐ”๋žŒ๋งŒ ์žˆ๋‹ค๋ฉด ์–ด๋””๋“  ๊ฐˆ ์ˆ˜ ์žˆ์–ด

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