๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ

โ›น๏ธ ๋ผ์ดํ”„/2020 ๊ฒจ์šธ๋ฐฉํ•™ ๋ชจ๊ฐ์ฝ”(๊ฐœ์ธ)

[์ฝ”๋…ํ•˜๊ตฌ๋งŒ ํŒ€] 2021.01.27(์ˆ˜) - 6์ฃผ์ฐจ ๊ฐœ์ธ ๋ชฉํ‘œ

- ๋ชฉํ‘œ - ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๊ฐœ๋…์„ ์‹ค์Šต ๋ฌธ์ œ๋ฅผ ํ†ตํ•ด ํ•™์Šตํ•˜๊ณ , ์ด๋ฅผ ์‘์šฉํ•˜์—ฌ ๋ฐฑ์ค€ ๋ฌธ์ œ์— ์ ์šฉํ•ด๋ณธ๋‹ค. 1. ํ”ผ๋ณด๋‚˜์น˜ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์—ด์˜ N๋ฒˆ์งธ ํ•ญ์„ ์ถœ๋ ฅํ•˜์‹œ์˜ค. [์ž…๋ ฅ ๊ฐ’] 0 [์ถœ๋ ฅ ๊ฐ’] 0 [์ž…๋ ฅ ๊ฐ’] 5 [์ถœ๋ ฅ ๊ฐ’] 5 [์ž…๋ ฅ ๊ฐ’] 20 [์ถœ๋ ฅ ๊ฐ’] 6765 2. ๊ฐ€๋ฐฉ ๊ฐ€๋ฐฉ์— ๋ฌผ๊ฑด์„ ๋„ฃ์–ด ์˜ฎ๊ธฐ๋ คํ•œ๋‹ค. ๋ฐฐ๋‚ญ์—๋Š” ๋„ฃ์„ ์ˆ˜ ์žˆ๋Š” ๋ฌผ๊ฑด ํฌ๊ธฐ์— ํ•œ๊ณ„๊ฐ€ ์žˆ์œผ๋ฉฐ, ๊ฐ ๋ฌผ๊ฑด์€ ํฌ๊ธฐ์™€ ๊ฐ€์น˜๊ฐ€ ๋ถ€์—ฌ๋˜์–ด์žˆ๋‹ค. ๋ฐฐ๋‚ญ์— ๋„ฃ์„ ์ˆ˜ ์žˆ๋Š” ๋ฌผ๊ฑด๋“ค์˜ ์ตœ๋Œ€ ๊ฐ€์น˜๋ฅผ ๊ตฌํ•˜์‹œ์˜ค. [์ž…๋ ฅ ๊ฐ’] 5 # ๋ฐฐ๋‚ญ ํฌ๊ธฐ 4 # ๋ฌผ๊ฑด ๊ฐœ์ˆ˜ 2 3 4 5 # ๋ฌผ๊ฑด ํฌ๊ธฐ 3 4 5 6 # ๋ฌผ๊ฑด ๊ฐ€์น˜ [์ถœ๋ ฅ ๊ฐ’] 7 3. ์ œ์žฌ์†Œ ์žฌ๋ชฉ์„ ๋งŒ๋“œ๋Š” ์ œ์žฌ์†Œ์—๋Š” ์žฌ๋ฃŒ๋กœ ๋“ค์–ด์˜จ ๋‚˜๋ฌด๋ฅผ ์ •ํ™•ํžˆ K๋ฏธํ„ฐ๋กœ ์ž๋ฅด๋Š” ๊ธฐ๊ณ„๊ฐ€ ์žˆ๋‹ค. ์žฌ๋ฃŒ๋กœ ๋“ค์–ด์˜จ ๋‚˜๋ฌด ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•˜์—ฌ, ๋‚˜..

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Dynamic Programming

[๋™์  ๊ณ„ํš๋ฒ• 1] [C++] 11053๋ฒˆ. ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด

www.acmicpc.net/problem/11053 11053๋ฒˆ: ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด ์ˆ˜์—ด A๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ˆ˜์—ด A = {10, 20, 10, 30, 20, 50} ์ธ ๊ฒฝ์šฐ์— ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์€ A = {10, 20, 10, 30, 20, 50} ์ด www.acmicpc.net ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์ˆ˜์—ด A์˜ ํฌ๊ธฐ N (1 โ‰ค N โ‰ค 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ์ˆ˜์—ด A๋ฅผ ์ด๋ฃจ๊ณ  ์žˆ๋Š” Ai๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ค Ai โ‰ค 1,000) ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ์ˆ˜์—ด A์˜ ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์˜ ๊ธธ์ด๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• a[i]๋ฅผ ์ž…๋ ฅ๋œ ์ˆ˜์—ด, dp[i]๋ฅผ i๋ฒˆ์งธ๊นŒ์ง€ ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์˜ ๊ธธ์ด๋ผ๊ณ  ..

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Dynamic Programming

[๋™์  ๊ณ„ํš๋ฒ• 1] [C++] 2156๋ฒˆ. ํฌ๋„์ฃผ ์‹œ์‹

www.acmicpc.net/problem/2156 2156๋ฒˆ: ํฌ๋„์ฃผ ์‹œ์‹ ํšจ์ฃผ๋Š” ํฌ๋„์ฃผ ์‹œ์‹ํšŒ์— ๊ฐ”๋‹ค. ๊ทธ ๊ณณ์— ๊ฐ”๋”๋‹ˆ, ํ…Œ์ด๋ธ” ์œ„์— ๋‹ค์–‘ํ•œ ํฌ๋„์ฃผ๊ฐ€ ๋“ค์–ด์žˆ๋Š” ํฌ๋„์ฃผ ์ž”์ด ์ผ๋ ฌ๋กœ ๋†“์—ฌ ์žˆ์—ˆ๋‹ค. ํšจ์ฃผ๋Š” ํฌ๋„์ฃผ ์‹œ์‹์„ ํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ, ์—ฌ๊ธฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‘ ๊ฐ€์ง€ ๊ทœ www.acmicpc.net ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ํฌ๋„์ฃผ ์ž”์˜ ๊ฐœ์ˆ˜ n์ด ์ฃผ์–ด์ง„๋‹ค. (1โ‰คnโ‰ค10,000) ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ n+1๋ฒˆ์งธ ์ค„๊นŒ์ง€ ํฌ๋„์ฃผ ์ž”์— ๋“ค์–ด์žˆ๋Š” ํฌ๋„์ฃผ์˜ ์–‘์ด ์ˆœ์„œ๋Œ€๋กœ ์ฃผ์–ด์ง„๋‹ค. ํฌ๋„์ฃผ์˜ ์–‘์€ 1,000 ์ดํ•˜์˜ ์Œ์ด ์•„๋‹Œ ์ •์ˆ˜์ด๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ์ตœ๋Œ€๋กœ ๋งˆ์‹ค ์ˆ˜ ์žˆ๋Š” ํฌ๋„์ฃผ์˜ ์–‘์„ ์ถœ๋ ฅํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ํฌ๋„์ฃผ๋ฅผ ๋งˆ์‹ค ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ์–ด๋–ป๊ฒŒ ๋ ๊นŒ? dp๋ฅผ n๋ฒˆ์งธ ์ž”๊นŒ์ง€ ๋งˆ์‹ค ๋•Œ ๊ฐ€์žฅ ๋งŽ์€ ์–‘์˜ ํฌ๋„์ฃผ, grape๋ฅผ n๋ฒˆ์งธ ์ž”์˜ ํฌ๋„..

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Dynamic Programming

[๋™์  ๊ณ„ํš๋ฒ• 1] [C++] 10844๋ฒˆ. ์‰ฌ์šด ๊ณ„๋‹จ ์ˆ˜

www.acmicpc.net/problem/10844 10844๋ฒˆ: ์‰ฌ์šด ๊ณ„๋‹จ ์ˆ˜ ์ฒซ์งธ ์ค„์— ์ •๋‹ต์„ 1,000,000,000์œผ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— N์ด ์ฃผ์–ด์ง„๋‹ค. N์€ 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 100๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ์ •๋‹ต์„ 1,000,000,000์œผ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ์šฐ์„  ๊ทœ์น™์„ ์ฐพ์„ ํ•„์š”๊ฐ€ ์žˆ๋‹ค. ๊ธธ์ด๊ฐ€ 1์ธ ๊ณ„๋‹จ์˜ ์ˆ˜๋Š” ๋ช‡ ๊ฐœ๊ฐ€ ์žˆ์„๊นŒ? 1 2 3 4 5 6 7 8 9 ๋‹ต์€ 9๊ฐœ ๊ทธ๋Ÿผ ๊ธธ์ด๊ฐ€ 2์ธ ๊ณ„๋‹จ์˜ ์ˆ˜๋Š”? 10 12 21 23 32 34 43 45 54 56 65 67 76 78 87 89 98 ๋‹ต์€ 17๊ฐœ ๊ทœ์น™์ด ๋ณด์ด๋Š”๊ฐ€? ๋ณด์ด์ง€ ์•Š์•„๋„ ๋œ๋‹ค. (๋ณธ์ธ๋„ ํ‘ธ๋Š”๋ฐ ์˜ค๋ž˜๊ฑธ๋ ธ์œผ๋‹ˆ... ์ด ๋ฌธ์ œ ๋งŽ์ด ์–ด๋ ค์› ..

โ›น๏ธ ๋ผ์ดํ”„/2020 ๊ฒจ์šธ๋ฐฉํ•™ ๋ชจ๊ฐ์ฝ”(๊ฐœ์ธ)

[์ฝ”๋…ํ•˜๊ตฌ๋งŒ ํŒ€] 2021.01.20(์ˆ˜) - 5์ฃผ์ฐจ ๊ฐœ์ธ ๊ฒฐ๊ณผ

- ๋ชฉํ‘œ - codekodo.tistory.com/33 [์ฝ”๋…ํ•˜๊ตฌ๋งŒ ํŒ€] 2021.01.20(์ˆ˜) - 5์ฃผ์ฐจ ๊ฐœ์ธ ๋ชฉํ‘œ - ๋ชฉํ‘œ - ๋„คํŠธ์›Œํฌ ์œ ๋Ÿ‰์„ ๊ณ„์‚ฐํ•˜๋Š” ํฌ๋“œ ํ’€์ปค์Šจ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ฐœ๋…์„ ํ•™์Šตํ•˜๊ณ , ์ด๋ฅผ ์ •๋ฆฌํ•œ๋‹ค. ์œ„์ƒ์ •๋ ฌ๊ณผ A* ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ฐœ๋…๋„ ์ถ”๊ฐ€์ ์œผ๋กœ ํ•™์Šตํ•œ๋‹ค. ์ดํ›„ ์‹ค์Šต ๋ฌธ์ œ์™€ ๋ฐฑ์ค€ ๋ฌธ์ œ๋ฅผ ํ†ตํ•ด ์ด๋ฅผ codekodo.tistory.com 1. ์œ„์ƒ ์ •๋ ฌ ์„ ํ–‰ ๊ณผ๋ชฉ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์„ ํ–‰ ๊ณผ๋ชฉ์„ ์ถœ๋ ฅํ•˜๊ณ  ์ดํ›„์— ์—ฐ๊ณ„๋œ ๊ณผ๋ชฉ์„ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ๊ณผ๋ชฉ๋ช…์ด ์ฒ˜์Œ์— ์ฃผ์–ด์ง€๋ฏ€๋กœ ์ด ๊ณผ๋ชฉ๋ช…์„ dictํ˜•์œผ๋กœ ์ €์žฅํ•œ๋‹ค. M๊ฐœ์˜ ์ž…๋ ฅ ๊ฐ’์—์„œ ์„ ํ–‰ ๊ณผ๋ชฉ, ํ›„ํ–‰ ๊ณผ๋ชฉ์ด ์ž…๋ ฅ๋˜๋Š”๋ฐ ์„ ํ–‰ ๊ณผ๋ชฉ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ด๋ฅผ count ํ•ด์ค€๋‹ค. count๊ฐ€ 0์ด๋ฉด ์ด๋Š” ์„ ํ–‰ ๊ณผ๋ชฉ์ด ์—†๋Š” ๊ฒฝ์šฐ์ด๋‹ค. ์ดํ›„ BFS๋ฅผ ํ†ตํ•ด ๊ณผ๋ชฉ ์ด์ˆ˜ ์ˆœ์„œ๋ฅผ ํƒ..

โœ๏ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜/Graph

2. DFS(Depth-Find-Search) : ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰

DFS(Depth-Find-Search) ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰ ์ง€๋‚œ ์‹œ๊ฐ„ BFS์— ์ด์–ด ์˜ค๋Š˜์€ DFS์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋ ค๊ณ  ํ•œ๋‹ค. DFS๋Š” Depth-Find-Search๋กœ ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰์ด๋‹ค. BFS์™€ ๋‹ค๋ฅด๊ฒŒ DFS๋Š” ๊นŠ์ด๋ฅผ ์šฐ์„ ์ ์œผ๋กœ ํƒ์ƒ‰ํ•œ๋‹ค. ์ฆ‰ ์ตœ๋Œ€ ๊นŠ์ด๊นŒ์ง€ ์žฌ๊ท€์ ์œผ๋กœ ์ด๋™ํ•œ ํ›„ ์ตœ๋Œ€ ๊นŠ์ด์— ๋„๋‹ฌํ•œ ๊ฒฝ์šฐ ์˜†์œผ๋กœ ์ด๋™ํ•œ๋‹ค. ๋˜ํ•œ BFS์—์„œ๋Š” Queue๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค๋ฉด DFS์—์„œ๋Š” Stack์„ ์‚ฌ์šฉํ•œ๋‹ค. ์ด Stack์— ์ €์žฅ๋œ ๊ฐ’์ด ์šฐ๋ฆฌ๊ฐ€ ์›ํ•˜๋Š” DFS์˜ ํƒ์ƒ‰ ์ˆœ์„œ์ด๋‹ค. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋™์ž‘ ๋ฐฉ์‹ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1. ํŠน์ • ์ •์ ์ด ์•„์ง ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ์ •์ ์ธ ๊ฒฝ์šฐ ์ด๋ฅผ ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌ ํ•ด์ค€๋‹ค. 2. ํ•ด๋‹น ์ •์ ๊ณผ ์—ฐ๊ฒฐ๋œ ๋‹ค๋ฅธ ์ •์ ์— ๋Œ€ํ•ด ์œ„ ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•œ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทธ๋ž˜ํ”„๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ DFS๋ฅผ ์ ์šฉํ•ด๋ณด์ž. โ‘  ์‹œ์ž‘ ์ •์ ์„ 8..

โœ๏ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜/Graph

1. BFS(Breath-Find-Search) : ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰

BFS(Breath-Find-Search) ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰ ๊ทธ๋ž˜ํ”„์˜ ํƒ์ƒ‰ ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜์˜ BFS์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. BFS๋Š” ๋ง ๊ทธ๋Œ€๋กœ ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰, ์ฆ‰ ํŠน์ • Vertice์—์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด Vertice๋ถ€ํ„ฐ ํƒ์ƒ‰ํ•œ๋‹ค๋Š” ๋œป์ด๋‹ค. ์šฐ์„  BFS๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Queue๊ฐ€ ํ•„์š”ํ•˜๋‹ค. Stack, Queue, Heap์— ๋Œ€ํ•ด์„œ๋Š” ๋‚˜์ค‘์— ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ธฐ๋กœ ํ•˜๊ณ  Queue์— ๋Œ€ํ•ด ๊ฐ„๋‹จํ•˜๊ฒŒ ์„ค๋ช…ํ•˜์ž๋ฉด FIFO(First in First out - ์„ ์ž…์„ ์ถœ)์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. ์œ„์—์„œ๋„ ๋งํ–ˆ๋“ฏ์ด BFS์˜ ๊ฐ€์žฅ ํฐ ๊ฐœ๋…์€ ๊ฐ€๊นŒ์šด ์ •์ ์„ ๋ฐฉ๋ฌธํ•˜๋˜, ์•„์ง ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ์ •์ ์ธ ๊ฒฝ์šฐ ๋ฐฉ๋ฌธ ๋ฆฌ์ŠคํŠธ์— ์ •์ ์„ ์ €์žฅํ•˜๋ฉด ๋œ๋‹ค. ์ด ๋ฐฉ๋ฌธ ๋ฆฌ์ŠคํŠธ๊ฐ€ ์šฐ๋ฆฌ๊ฐ€ ์›ํ•˜๋Š” ์ตœ์ข…์ ์ธ BFS์˜ ํƒ์ƒ‰ ์ˆœ์„œ์ด๋‹ค. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋™์ž‘ ๋ฐฉ์‹..

โ›น๏ธ ๋ผ์ดํ”„/2020 ๊ฒจ์šธ๋ฐฉํ•™ ๋ชจ๊ฐ์ฝ”(๊ฐœ์ธ)

[์ฝ”๋…ํ•˜๊ตฌ๋งŒ ํŒ€] 2021.01.20(์ˆ˜) - 5์ฃผ์ฐจ ๊ฐœ์ธ ๋ชฉํ‘œ

- ๋ชฉํ‘œ - ๋„คํŠธ์›Œํฌ ์œ ๋Ÿ‰์„ ๊ณ„์‚ฐํ•˜๋Š” ํฌ๋“œ ํ’€์ปค์Šจ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ฐœ๋…์„ ํ•™์Šตํ•˜๊ณ , ์ด๋ฅผ ์ •๋ฆฌํ•œ๋‹ค. ์œ„์ƒ์ •๋ ฌ๊ณผ A* ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ฐœ๋…๋„ ์ถ”๊ฐ€์ ์œผ๋กœ ํ•™์Šตํ•œ๋‹ค. ์ดํ›„ ์‹ค์Šต ๋ฌธ์ œ์™€ ๋ฐฑ์ค€ ๋ฌธ์ œ๋ฅผ ํ†ตํ•ด ์ด๋ฅผ ์‘์šฉํ•œ๋‹ค. 1. ์œ„์ƒ ์ •๋ ฌ 2. ์ •๊ธ€์˜ ๋ฒ•์น™ 3. ๊ธฐ๋ฆ„์ด ๊ฐ„๋‹น๊ฐ„๋‹น 4. ๋ฐฑ์ค€ 2188๋ฒˆ - ์ถ•์‚ฌ๋ฐฐ์ • ๋ฐฑ์ค€ 2188๋ฒˆ - ์ถ•์‚ฌ๋ฐฐ์ • (www.acmicpc.net/problem/2188) 2188๋ฒˆ: ์ถ•์‚ฌ ๋ฐฐ์ • ๋†๋ถ€ ์กด์€ ์†Œ ์ถ•์‚ฌ๋ฅผ ์™„์„ฑํ•˜์˜€๋‹ค. ์ถ•์‚ฌ ํ™˜๊ฒฝ์„ ์พŒ์ ํ•˜๊ฒŒ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด์„œ, ์กด์€ ์ถ•์‚ฌ๋ฅผ M๊ฐœ์˜ ์นธ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜๊ณ , ํ•œ ์นธ์—๋Š” ์ตœ๋Œ€ ํ•œ ๋งˆ๋ฆฌ์˜ ์†Œ๋งŒ ๋“ค์–ด๊ฐ€๊ฒŒ ๊ณ„ํšํ–ˆ๋‹ค. ์ฒซ ์ฃผ์—๋Š” ์†Œ๋ฅผ ์ž„์˜ ๋ฐฐ์ •ํ•ด www.acmicpc.net

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Dynamic Programming

[๋™์  ๊ณ„ํš๋ฒ• 1] [C++] 1463๋ฒˆ. 1๋กœ ๋งŒ๋“ค๊ธฐ

www.acmicpc.net/problem/1463 1463๋ฒˆ: 1๋กœ ๋งŒ๋“ค๊ธฐ ์ฒซ์งธ ์ค„์— 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 106๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 10^6๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ์—ฐ์‚ฐ์„ ํ•˜๋Š” ํšŸ์ˆ˜์˜ ์ตœ์†Ÿ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ์šฐ์„  ๊ทœ์น™์„ ์ฐพ์•„๋ณด์ž. ๊ณ„์‚ฐ์‹์˜ ๊ฒฝ์šฐ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ ๋‚˜์˜ฌ ์ˆ˜๋„ ์žˆ๋‹ค. N ์—ฐ์‚ฐ ํšŸ์ˆ˜ ๊ณ„์‚ฐ์‹ 1 1 1 2 1 2/2=1 3 1 3/3=1 4 2 (4-1)/3=1 5 3 (5-1)/2/2=1 6 2 6/3/2=1 7 3 (7-1)/3/2=1 8 3 8/2/2/2=1 9 2 9/3/3=1 10 3 (10-1)/3/3=1 ์–ด๋–ค ๊ทœ์น™์„ ์ฐพ์„ ์ˆ˜ ์žˆ์„๊นŒ? ์šฐ์„  ์ˆ˜๊ฐ€ 1์”ฉ ์ปค์งˆ ..

โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Dynamic Programming

[๋™์  ๊ณ„ํš๋ฒ• 1] [C++] 2579๋ฒˆ. ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ

www.acmicpc.net/problem/2579 2579๋ฒˆ: ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ฒŒ์ž„์€ ๊ณ„๋‹จ ์•„๋ž˜ ์‹œ์ž‘์ ๋ถ€ํ„ฐ ๊ณ„๋‹จ ๊ผญ๋Œ€๊ธฐ์— ์œ„์น˜ํ•œ ๋„์ฐฉ์ ๊นŒ์ง€ ๊ฐ€๋Š” ๊ฒŒ์ž„์ด๋‹ค. ๊ณผ ๊ฐ™์ด ๊ฐ๊ฐ์˜ ๊ณ„๋‹จ์—๋Š” ์ผ์ •ํ•œ ์ ์ˆ˜๊ฐ€ ์“ฐ์—ฌ ์žˆ๋Š”๋ฐ ๊ณ„๋‹จ์„ ๋ฐŸ์œผ๋ฉด ๊ทธ ๊ณ„๋‹จ์— ์“ฐ์—ฌ ์žˆ๋Š” ์  www.acmicpc.net ์ž…๋ ฅ ์ž…๋ ฅ์˜ ์ฒซ์งธ ์ค„์— ๊ณ„๋‹จ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ œ์ผ ์•„๋ž˜์— ๋†“์ธ ๊ณ„๋‹จ๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ ๊ฐ ๊ณ„๋‹จ์— ์“ฐ์—ฌ ์žˆ๋Š” ์ ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ณ„๋‹จ์˜ ๊ฐœ์ˆ˜๋Š” 300์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๊ณ , ๊ณ„๋‹จ์— ์“ฐ์—ฌ ์žˆ๋Š” ์ ์ˆ˜๋Š” 10,000์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ฒŒ์ž„์—์„œ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์ด ์ ์ˆ˜์˜ ์ตœ๋Œ“๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• dp ๋ฌธ์ œ์ด๋ฏ€๋กœ ์ ํ™”์‹์„ ์ฐพ์•„์•ผํ•œ๋‹ค. ๋„์ฐฉ์ง€์ ์— ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ์–ด๋–ป๊ฒŒ ๋ ๊นŒ? ๋‘ ..

kodo_o
'๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (13 Page)