๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Algorithm๐Ÿฐ96

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Swift 2020 ์นด์นด์˜ค ์ธํ„ด์‹ญ ํ‚คํŒจ๋“œ ๋ˆ„๋ฅด๊ธฐ ๋ฌธ์ œ : https://programmers.co.kr/learn/courses/30/lessons/67256 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํ‚คํŒจ๋“œ ๋ˆ„๋ฅด๊ธฐ [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr ๋‚œ์ด๋„ level 1 ๋ถ„์„ : ๊ฐ„๋‹จํ•œ ๊ตฌํ˜„ ๋ฌธ์ œ์˜€๋‹ค ! 1, 4, 7๋ฒˆ์€ ์™ผ์†์œผ๋กœ 3, 6, 9๋ฒˆ์€ ์˜ค๋ฅธ์†์œผ๋กœ ๋ˆ„๋ฅด๊ณ  2, 5, 8, 0 ์ˆซ์ž๋Š” ํ˜„์žฌ ์žˆ๋Š” ์† ์œ„์น˜์—์„œ ๊ฑฐ๋ฆฌ๊ฐ€ ๊ฐ€๊นŒ์šด ์†์ด ๋ˆ„๋ฅด๋Š” ๊ตฌํ˜„ ๋ฌธ์ œ์˜€๋‹ค. ์ˆซ์ž๊ฐ€ ํ–‰๋ผ๋ฆฐ 3๋งŒํผ ์ฐจ์ด๊ฐ€ ๋‚˜๊ธฐ.. 2022. 4. 8.
[๋ฐฑ์ค€] Swift 2529 ๋ถ€๋“ฑํ˜ธ backtracking ๋ฌธ์ œ : https://www.acmicpc.net/problem/2529 2529๋ฒˆ: ๋ถ€๋“ฑํ˜ธ ๋‘ ์ข…๋ฅ˜์˜ ๋ถ€๋“ฑํ˜ธ ๊ธฐํ˜ธ ‘’๊ฐ€ k๊ฐœ ๋‚˜์—ด๋œ ์ˆœ์„œ์—ด A๊ฐ€ ์žˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด ๋ถ€๋“ฑํ˜ธ ๊ธฐํ˜ธ ์•ž๋’ค์— ์„œ๋กœ ๋‹ค๋ฅธ ํ•œ ์ž๋ฆฟ์ˆ˜ ์ˆซ์ž๋ฅผ ๋„ฃ์–ด์„œ ๋ชจ๋“  ๋ถ€๋“ฑํ˜ธ ๊ด€๊ณ„๋ฅผ ๋งŒ์กฑ์‹œํ‚ค๋ ค๊ณ  ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ œ์‹œ www.acmicpc.net ๋ถ„์„ : ํ˜ผ์ž์„œ ํ’€์ง€ ๋ชปํ–ˆ๋‹ค .. ใ…œ ๋ถ€๋“ฑํ˜ธ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ค‘๋ณต ์—†๋Š” ์กฐํ•ฉ์„ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ๊ทธ๋Ÿฌํ•œ ์กฐํ•ฉ๋“ค ์ค‘ ์ตœ๋Œ€ ๊ฐ’, ์ตœ์†Œ ๊ฐ’์„ ๊ตฌํ•˜๋Š” ๊ฒŒ ๋‹ต์ด์˜€๋‹ค ! ์šฐ์„  ๋ถ€๋“ฑํ˜ธ ๊ฐœ์ˆ˜ + 1๊ฐœ๋งŒํผ์˜ ์ˆซ์ž๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์กฐ๊ฑด ๋งŒ์กฑ์‹œ answer ๋ฐฐ์—ด์— ๋‹ด๋Š”๋‹ค. ๊ทธ๋ฆฌ๊ณ  for ๋ฌธ 0 ~ 9 10๊ฐœ์˜ ์ˆซ์ž์— ๋Œ€ํ•ด ์ฒซ๋ฒˆ์งธ ์ˆซ์ž์ผ ๊ฒฝ์šฐ๋Š” ๋ถ€๋“ฑํ˜ธ ์กฐ๊ฑด์„ ์ฒดํฌํ•˜์ง€ ์•Š๊ณ  ๋ฐ”๋กœ ์ˆซ์ž๋ฅผ ๋„ฃ๋Š”๋‹ค. ๊ทธ ๋‹ค์Œ index๊ฐ€ 1์ด์ƒ์ผ.. 2022. 4. 7.
[๋ฐฑ์ค€] Swift 1300 k๋ฒˆ์งธ ์ˆ˜ BS(Bineary Search) ๋ฌธ์ œ : https://www.acmicpc.net/problem/1300 1300๋ฒˆ: K๋ฒˆ์งธ ์ˆ˜ ์„ธ์ค€์ด๋Š” ํฌ๊ธฐ๊ฐ€ N×N์ธ ๋ฐฐ์—ด A๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค. ๋ฐฐ์—ด์— ๋“ค์–ด์žˆ๋Š” ์ˆ˜ A[i][j] = i×j ์ด๋‹ค. ์ด ์ˆ˜๋ฅผ ์ผ์ฐจ์› ๋ฐฐ์—ด B์— ๋„ฃ์œผ๋ฉด B์˜ ํฌ๊ธฐ๋Š” N×N์ด ๋œ๋‹ค. B๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ–ˆ์„ ๋•Œ, B[k]๋ฅผ ๊ตฌํ•ด๋ณด์ž. ๋ฐฐ์—ด A์™€ B www.acmicpc.net ํ’€์ด : ๋ฌธ์ œ๋ฅผ ์ง์ ‘ ํ’€์ง„ ๋ชปํ–ˆ์ง€๋งŒ, ์‹ ๊ธฐํ•œ ํ’€์ด๊ฐ€ ์žˆ์–ด์„œ ๊ธฐ๋ก์„ ๋‚จ๊ฒจ๋ณด๋ ค๊ตฌ ํ•œ๋‹ค. ๋ฌธ์ œ๋Š” 2์ฐจ์› N*N ๋ฐฐ์—ด ๊ฐ’์„ 1์ฐจ์› N*N๋ฐฐ์—ด๋กœ ๋ฐ”๊พธ์—ˆ์„๋•Œ k๋ฒˆ์งธ ์ธ๋ฑ์Šค์˜ ๊ฐ’(m)์„ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด์„œ N = 4 ๋ฐฐ์—ด์ด ์žˆ์„๋•Œ, ์ด๋ฅผ 1์ฐจ์› ๋ฐฐ์—ด๋กœ ๋Š˜์—ฌ๋ณด๋ฉด ์ด๋ ‡๊ฒŒ ๋  ๊ฒƒ์ด๊ณ  ๊ทธ๋Ÿฌ๋ฏ€๋กœ ์ด๋ฅผ ์ด๋ถ„ ํƒ์ƒ‰์œผ๋กœ ์ ‘๊ทผ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. ์‚ฌ์‹ค ์„ ํ˜• ํƒ์ƒ‰์œผ๋กœ ์ฐพ์œผ๋ ค .. 2022. 3. 31.
[๋ฐฑ์ค€] Swift 1806 ๋ถ€๋ถ„ํ•ฉ ํˆฌํฌ์ธํ„ฐ ๋ฌธ์ œ : https://www.acmicpc.net/problem/1806 1806๋ฒˆ: ๋ถ€๋ถ„ํ•ฉ ์ฒซ์งธ ์ค„์— N (10 ≤ N < 100,000)๊ณผ S (0 < S ≤ 100,000,000)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ์ˆ˜์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ์ˆ˜์—ด์˜ ๊ฐ ์›์†Œ๋Š” ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด์ ธ ์žˆ์œผ๋ฉฐ, 10,000์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค. www.acmicpc.net ํ’€์ด : ์—ฐ์†๋œ ๋ฐฐ์—ด์˜ ๋ถ€๋ถ„ ๋ฐฐ์—ด ์ค‘ ๊ทธ ํ•ฉ์ด M ์ด์ƒ์ด ๋˜๋Š” ๋ถ€๋ถ„ ๋ฐฐ์—ด ์ค‘์—์„œ ๊ธธ์ด๊ฐ€ ์งง์€ ๋ฐฐ์—ด์˜ ๊ธธ์ด๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ๋‹ค. startIndex์™€ endIndex๋ฅผ ์ฒซ ์ธ๋ฑ์Šค์— ์œ„์น˜ํ•˜๋„๋ก ๋‘์—ˆ๊ณ , sum ๊ฐ’์€ ์›์†Œ ์ดˆ๊ธฐ๊ฐ’์œผ๋กœ ์„ค์ •ํ–ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  while๋ฌธ์„ ๋Œ๋•Œ๋งˆ๋‹ค endIndex๊ฐ’์€ ํ•˜๋‚˜์”ฉ ์ฆ๊ฐ€์‹œํ‚จ๋‹ค. ๊ทธ๋ฆฌ๊ณ  sum ๊ฐ’์ด M๋ณด๋‹ค ํฐ ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค๋ฉด ๊ธธ์ด๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์„๋งŒ.. 2022. 3. 29.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ํƒ€๊ฒŸ ๋„˜๋ฒ„ DFS C++ ๋ฌธ์ œ : https://programmers.co.kr/learn/courses/30/lessons/43165 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํƒ€๊ฒŸ ๋„˜๋ฒ„ n๊ฐœ์˜ ์Œ์ด ์•„๋‹Œ ์ •์ˆ˜๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ •์ˆ˜๋“ค์„ ์ˆœ์„œ๋ฅผ ๋ฐ”๊พธ์ง€ ์•Š๊ณ  ์ ์ ˆํžˆ ๋”ํ•˜๊ฑฐ๋‚˜ ๋นผ์„œ ํƒ€๊ฒŸ ๋„˜๋ฒ„๋ฅผ ๋งŒ๋“ค๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด [1, 1, 1, 1, 1]๋กœ ์ˆซ์ž 3์„ ๋งŒ๋“ค๋ ค๋ฉด ๋‹ค์Œ ๋‹ค์„ฏ ๋ฐฉ๋ฒ•์„ ์“ธ ์ˆ˜ programmers.co.kr ๋ถ„์„ : ์žฌ๊ท€ ๋ฐฉ์‹์„ ์ด์šฉํ•ด์„œ ํ’€์—ˆ๋‹ค. DFS/ BFS๋Š” ์žฌ๊ท€ or stack + visit ํŒ๋ณ„ ๋ฐฉ์‹์œผ๋กœ ํ’€ ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด๋ฒˆ ๋ฌธ์ œ๋Š” ์žฌ๊ท€๊ฐ€ ๋” ์ง๊ด€์ ์ผ ๊ฒƒ ๊ฒƒ ๊ฐ™์•„์„œ ์žฌ๊ท€ ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ–ˆ๋‹ค. ์ค‘์š”ํ•œ ๊ฒƒ์€ ์žฌ๊ท€ ์ข…๋ฃŒ ์กฐ๊ฑด์ด๋‹ค. ์ด ์›์†Œ์˜ ์ˆซ์ž๋งŒํผ depth๋ฅผ ๋‚ด๋ ค๊ฐ”๋‹ค๋ฉด ๋น ์ ธ๋‚˜์˜จ๋‹ค. ์ฒ˜์Œ์—” -๋กœ dfs๋ฅผ ๋Œ๋•Œ depth๋ฅผ ์™œ ์ฆ๊ฐ€์‹œ.. 2022. 3. 25.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์ง์ง€์–ด ์ œ๊ฑฐํ•˜๊ธฐ stack ๋ฌธ์ œ : https://programmers.co.kr/learn/courses/30/lessons/12973 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ง์ง€์–ด ์ œ๊ฑฐํ•˜๊ธฐ ์ง์ง€์–ด ์ œ๊ฑฐํ•˜๊ธฐ๋Š”, ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด์„ ๊ฐ€์ง€๊ณ  ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € ๋ฌธ์ž์—ด์—์„œ ๊ฐ™์€ ์•ŒํŒŒ๋ฒณ์ด 2๊ฐœ ๋ถ™์–ด ์žˆ๋Š” ์ง์„ ์ฐพ์Šต๋‹ˆ๋‹ค. ๊ทธ๋‹ค์Œ, ๊ทธ ๋‘˜์„ ์ œ๊ฑฐํ•œ ๋’ค, ์•ž๋’ค๋กœ ๋ฌธ์ž์—ด์„ ์ด์–ด ๋ถ™ programmers.co.kr ํ’€์ด : ์˜ˆ์‹œ : "baabaa" ๋‘๊ฐœ์”ฉ ์ง ์ง€์œผ๋ฉด ๋ฌธ์ž์—ด์—์„œ ์ œ๊ฑฐ ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ์ฒ˜์Œ๋ถ€ํ„ฐ ์ˆœํšŒํ•˜์—ฌ ๋‘๊ฐœ ๋‚˜์˜ค๋Š” ์›์†Œ๊ฐ€ ์žˆ์œผ๋ฉด string์—์„œ ์ œ๊ฑฐํ•˜๊ณ  ๋‹ค์‹œ ์ธ๋ฑ์Šค๋ฅผ ์ฒ˜์Œ์œผ๋กœ ํ•˜์—ฌ string ๊ธธ์ด๊ฐ€ ์ธ๋ฑ์Šค๋ณด๋‹ค ์ž‘์•„์งˆ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜์˜€๋‹ค. ํ•˜์ง€๋งŒ O(n^2) ์‹œ๊ฐ„ ๋ณต์žก๋„์˜€๊ธฐ ๋•Œ๋ฌธ์— ํšจ์œจ์„ฑ์—์„œ ์‹œ๊ฐ„ ์ดˆ๊ณผ ์ž”๋œฉ ์–ป์—ˆ๋‹ค ใ…Ž ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ•ด sta.. 2022. 3. 25.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ฐ€์žฅ ํฐ ์ˆ˜ STL(sort) ๋ฌธ์ œ : https://programmers.co.kr/learn/courses/30/lessons/42746 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ฐ€์žฅ ํฐ ์ˆ˜ 0 ๋˜๋Š” ์–‘์˜ ์ •์ˆ˜๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ •์ˆ˜๋ฅผ ์ด์–ด ๋ถ™์—ฌ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ํฐ ์ˆ˜๋ฅผ ์•Œ์•„๋‚ด ์ฃผ์„ธ์š”. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ฃผ์–ด์ง„ ์ •์ˆ˜๊ฐ€ [6, 10, 2]๋ผ๋ฉด [6102, 6210, 1062, 1026, 2610, 2106]๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ณ , ์ด์ค‘ ๊ฐ€์žฅ ํฐ programmers.co.kr ๋ถ„์„ : ์šฐ์„  ๊ฐ€์žฅ ์ฒซ๋ฒˆ์งธ ์ž๋ฆฌ๊ฐ€ ํฐ ์›์†Œ ๋จผ์ € ์ •๋ ฌ ๋˜์–ด์•ผ ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ธ๋‹ค ! ํ•˜์ง€๋งŒ ๋ฌธ์ œ๋Š” ์ฒซ๋ฒˆ์งธ ์ž๋ฆฌ ์›์†Œ๊ฐ€ ๊ฐ™์€ ์›์†Œ๋“ค์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด [8, 3, 30, 34, 36] ๊ฐ€ ์žˆ์„๋•Œ ๊ธฐ๋ณธ sortํ•จ์ˆ˜๋กœ ์ •๋ ฌํ•˜๋ฉด [8, 36, 32, 30, 3] ์ˆœ์œผ๋กœ ์ •๋ ฌ๋œ๋‹ค. ํ•˜์ง€๋งŒ 32303๋ณด.. 2022. 3. 25.
[๋ฐฑ์ค€] Swift 2468 ์•ˆ์ „ ์˜์—ญ BFS ๋ฌธ์ œ : https://www.acmicpc.net/problem/2468 2468๋ฒˆ: ์•ˆ์ „ ์˜์—ญ ์žฌ๋‚œ๋ฐฉ์žฌ์ฒญ์—์„œ๋Š” ๋งŽ์€ ๋น„๊ฐ€ ๋‚ด๋ฆฌ๋Š” ์žฅ๋งˆ์ฒ ์— ๋Œ€๋น„ํ•ด์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ผ์„ ๊ณ„ํšํ•˜๊ณ  ์žˆ๋‹ค. ๋จผ์ € ์–ด๋–ค ์ง€์—ญ์˜ ๋†’์ด ์ •๋ณด๋ฅผ ํŒŒ์•…ํ•œ๋‹ค. ๊ทธ ๋‹ค์Œ์— ๊ทธ ์ง€์—ญ์— ๋งŽ์€ ๋น„๊ฐ€ ๋‚ด๋ ธ์„ ๋•Œ ๋ฌผ์— ์ž ๊ธฐ์ง€ ์•Š๋Š” www.acmicpc.net ๋ถ„์„ : ๋ฌธ์ œ์˜ ์•ˆ์ „ ์˜์—ญ์˜ ์ •์˜๋ฅผ ์ฒ˜์Œ์—” ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ค์› ๋‹ค. ๊ทธ๋ž˜์„œ ์–ผ๋งŒํผ์˜ ์žฅ๋งˆ๊ฐ€ ๋‚ด๋ฆฐ๋‹ค๊ตฌ ? ํ–ˆ๋Š”๋ฐ ๋ชจ๋“  ์žฅ๋งˆ ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋‹ค ๊ฒ€์‚ฌํ•ด ์•ˆ์ „ ์˜์—ญ์ด ์ตœ๋Œ€๊ฐ€ ๋ ๋•Œ ์•ˆ์ „ ์˜์—ญ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋ผ๋Š” ๋œป์ด์—ˆ๋‹ค. bfs๋ฅผ ๋Œ์•„ visit๋ฐฐ์—ด์— false์ธ ์˜์—ญ์„ true๋กœ ๋งŒ๋“ค๊ณ  ๋๋‚ด๊ณ  ์˜ค๋ฉด bfsAll ํ•จ์ˆ˜์—์„œ ํ•˜๋‚˜์”ฉ cnt + 1 ํ•˜์—ฌ ์•ˆ์ „ ์˜์—ญ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•ด์ค€๋‹ค. ๊ทธ ์ „์— visit ๋ฐฐ์—ด์„ ์•ˆ์ „ .. 2022. 3. 11.
[๋ฐฑ์ค€] 1516 ๊ฒŒ์ž„ ๊ฐœ๋ฐœ ๋ฌธ์ œ : https://www.acmicpc.net/problem/1516 1516๋ฒˆ: ๊ฒŒ์ž„ ๊ฐœ๋ฐœ ์ฒซ์งธ ์ค„์— ๊ฑด๋ฌผ์˜ ์ข…๋ฅ˜ ์ˆ˜ N(1 ≤ N ≤ 500)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ ๊ฑด๋ฌผ์„ ์ง“๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„๊ณผ ๊ทธ ๊ฑด๋ฌผ์„ ์ง“๊ธฐ ์œ„ํ•ด ๋จผ์ € ์ง€์–ด์ ธ์•ผ ํ•˜๋Š” ๊ฑด๋ฌผ๋“ค์˜ ๋ฒˆํ˜ธ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฑด๋ฌผ์˜ ๋ฒˆํ˜ธ๋Š” 1๋ถ€ www.acmicpc.net ํ’€์ด : ๋จผ์ € ๊ฐœ๋ฐœํ•  ๊ฒƒ์ด ์žˆ๋‹ค๋Š” ์ ์—์„œ ์œ„์ƒ ์ •๋ ฌ ๋ฌธ์ œ๋‹ค. ๐Ÿ‘‰๐Ÿป ์œ„์ƒ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ž์‹ ์˜ ๋…ธ๋“œ๋กœ ํ–ฅํ•˜๋Š” ๋‹ค๋ฅธ ๋…ธ๋“œ๊ฐ€ ์žˆ์„๋•Œ ๊ทธ ๋…ธ๋“œ๋ฅผ v[์ž์‹ ].push_back(ํ–ฅํ•˜๋Š” ๋…ธ๋“œ)๋กœ ๋„ฃ์–ด์คฌ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ–ฅํ•˜๋Š” ๋“ค์–ด์˜ค๋Š” ๋…ธ๋“œ์˜ ๊ฐ’์„ ์ฆ๊ฐ€์‹œ์ผœ์คฌ๋‹ค. (๊ฐœ๋…๊ณผ ๋ฐ˜๋Œ€๋‹ค) ์ฆ‰ indegeree[ํ–ฅํ•˜๋Š”๋…ธ๋“œ]++ ๋”ฐ๋ผ์„œ ๊ฐ’์„ ๋„์‹ํ™” ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™๋‹ค. ๊ทธ๋ฆฌ๊ณ  indegree๊ฐ€ 0์ธ ๊ฐ’๋ถ€ํ„ฐ vec.. 2022. 3. 3.
์ˆœ์—ด, ์กฐํ•ฉ, ์ค‘๋ณต์ˆœ์—ด, ์ค‘๋ณต์กฐํ•ฉ with C++ 1. ์ˆœ์—ด(Permutation) ์ˆœ์„œ๋ฅผ ๋”ฐ์ง€๊ณ , ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค. (์ˆœ์„œO, ์ค‘๋ณตX) ๋ฐฑ์ค€ ๊ด€๋ จ ๋ฌธ์ œ : ๋ชจ๋“  ์ˆœ์—ด -> ๋ฐฑํŠธ๋ž™ํ‚น ๋ฌธ์ œ, visit ๋ฐฐ์—ด์„ ๋‘ฌ ์ค‘๋ณต์„ ๊ฒ€์‚ฌํ•œ๋‹ค. ์žฌ๊ท€๋ฅผ ์ด์šฉํ•ด ๋‹ค๋ฅธ ์›์†Œ์— ๋Œ€ํ•ด ๋˜‘๊ฐ™์ด ์ˆ˜ํ–‰ํ•œ๋‹ค. c++ ์ฝ”๋“œ : // // 10974_all_ permutation.cpp // SOMA๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป // // Created by JoSoJeong on 2021/02/27. // #include #include #include #include using namespace std; vector v; bool visit[9]; int n; /// -> next_permutation(์ˆœ์—ด ์‹œ์ž‘, ์ˆœ์—ด ๋) /// with recursive void make_permu_dfs(){.. 2022. 3. 3.
[๋ฐฑ์ค€] 2630 ์ƒ‰์ข…์ด ๋งŒ๋“ค๊ธฐ ๋ฌธ์ œ : https://www.acmicpc.net/problem/2630 2630๋ฒˆ: ์ƒ‰์ข…์ด ๋งŒ๋“ค๊ธฐ ์ฒซ์งธ ์ค„์—๋Š” ์ „์ฒด ์ข…์ด์˜ ํ•œ ๋ณ€์˜ ๊ธธ์ด N์ด ์ฃผ์–ด์ ธ ์žˆ๋‹ค. N์€ 2, 4, 8, 16, 32, 64, 128 ์ค‘ ํ•˜๋‚˜์ด๋‹ค. ์ƒ‰์ข…์ด์˜ ๊ฐ ๊ฐ€๋กœ์ค„์˜ ์ •์‚ฌ๊ฐํ˜•์นธ๋“ค์˜ ์ƒ‰์ด ์œ—์ค„๋ถ€ํ„ฐ ์ฐจ๋ก€๋กœ ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ๋งˆ์ง€๋ง‰ ์ค„๊นŒ์ง€ ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net ํ’€์ด : ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ƒ‰์ข…์ด๊ฐ€ ์žˆ์„๋•Œ ์ •์‚ฌ๊ฐํ˜• ํฌ๊ธฐ๋กœ ๋‚˜๋ˆ  ์ƒ‰์ข…์ด๊ฐ€ ๋ชจ๋‘ ํŒŒ๋ž€๋ฉด์„ ๋˜๋Š” ํ•˜์–€๋ฉด์„ ๋„๊ฒŒ ํ•˜๋Š” ์ž‘์€ ์ •์‚ฌ๊ฐํ˜• ์ƒ‰์ข…์ด๋กœ ๋งŒ๋“ค๊ณ  ๋งŒ๋“ค์–ด์ง„ ํฐ ์ƒ‰์ข…์ด ๊ฐœ์ˆ˜, ํŒŒ๋ž€ ์ƒ‰์ข…์ด ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ๋‹ค. ์ฆ‰ ๋ถ„ํ•  ์ •๋ณต์„ ํ†ตํ•ด ํƒ‘๋‹ค์šด ๋ฐฉ์‹์œผ๋กœ ๋‚˜๋ˆ ์ง„ ์ƒ‰์ข…์ด๊ฐ€ ์กฐ๊ฑด์— ๋งž๋Š” ์ƒ‰์ข…์ด์ธ์ง€ ๊ฒ€์‚ฌํ•˜๋ฉด ๋œ๋‹ค. ์ƒ‰์ข…์ด ํฌ๊ธฐ๊ฐ€ 1x1์ผ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜๋ฏ€๋กœ ์žฌ๊ท€๋ฅผ ํ†ตํ•ด ํ•ด๊ฒฐํ• ์ˆ˜ ์žˆ์—ˆ๋‹ค... 2022. 2. 24.
[๋ฐฑ์ค€] 3020 ๊ฐœ๋˜ฅ๋ฒŒ๋ ˆ prefix sum(๋ˆ„์ ํ•ฉ) ๋ฌธ์ œ : https://www.acmicpc.net/problem/3020 3020๋ฒˆ: ๊ฐœ๋˜ฅ๋ฒŒ๋ ˆ ๊ฐœ๋˜ฅ๋ฒŒ๋ ˆ ํ•œ ๋งˆ๋ฆฌ๊ฐ€ ์žฅ์• ๋ฌผ(์„์ˆœ๊ณผ ์ข…์œ ์„)๋กœ ๊ฐ€๋“์ฐฌ ๋™๊ตด์— ๋“ค์–ด๊ฐ”๋‹ค. ๋™๊ตด์˜ ๊ธธ์ด๋Š” N๋ฏธํ„ฐ์ด๊ณ , ๋†’์ด๋Š” H๋ฏธํ„ฐ์ด๋‹ค. (N์€ ์ง์ˆ˜) ์ฒซ ๋ฒˆ์งธ ์žฅ์• ๋ฌผ์€ ํ•ญ์ƒ ์„์ˆœ์ด๊ณ , ๊ทธ ๋‹ค์Œ์—๋Š” ์ข…์œ ์„๊ณผ ์„์ˆœ์ด www.acmicpc.net ๋ถ„์„ : 1. ์„์ˆœ๊ณผ ์ข…์œ ์„์˜ ๊ตฌ๋ถ„์€ ์ง์ˆ˜์ธ์ง€ ํ™€์ˆ˜์ธ์ง€๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐœ๋˜ฅ๋ฒŒ๋ ˆ๊ฐ€ ๋†’์ด 1์ธ ๊ณณ์„ ์ง€๋‚œ๋‹ค๋ฉด ์ข…์œ ์„์€ 1์ธ ๋†’์ด, ์„์ˆœ์€ H -1 ์ธ ๋†’์ด๋ฅผ ๋™์‹œ์— ์ง€๋‚œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค. 2. ์„์ˆœ๋ผ๋ฆฌ์˜ (๋˜๋Š” ์ข…์œ ์„๋ผ๋ฆฌ์˜) ์ˆœ์„œ ๋ฐ”๋€œ์€ ์ƒ๊ด€์ด ์—†๋‹ค. ๊ฐœ๋˜ฅ๋ฒŒ๋ ˆ๋Š” N ๊ธธ์ด๋ฅผ ํ†ต๊ณผํ•˜์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์„์ˆœ์˜ ๊ธธ์ด๋งŒํผ ๊ฐ€์ง„ ์„์ˆœ ๊ฐœ์ˆ˜๋ฅผ ๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค. (์ข…์œ ์„๋„ ๋˜‘๊ฐ™๋‹ค) 3. ๋†’์ด๊ฐ€ H์ผ๋•Œ ๊ฐœ๋˜ฅ๋ฒŒ๋ ˆ๋Š”.. 2022. 2. 21.
Swift TIP ์ •๋ฆฌ.zip swift๋กœ ์ฝ”๋”ฉ ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด์„œ ํ•„์š”ํ–ˆ๋˜ ๊ธฐ๋Šฅ๋“ค์„ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ตฌ ํ•œ๋‹ค. ์ฐจ์ฐจ ๋ฌธ์ œ ํ’€๋ฉด์„œ ๊ณ„์† ์—…๋ฐ์ดํŠธ ํ•  ์˜ˆ์ •์ด๋‹ค ์ •์ˆ˜ 1๊ฐœ ์ž…๋ ฅ ๋ฐ›๊ธฐ var n = Int(readLine()!)! ์ •์ˆ˜ํ˜• ๋ฐฐ์—ด ์ž…๋ ฅ ๋ฐ›๊ธฐ var arr = readLine()!.split(separator: " ").map { Int(String($0))! } ๋ฌธ์ž์—ด ๋‚ด ํŠน์ • ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค ์ฐพ๊ธฐ let input = "HAPPY" if let rangeS = input.range(of: "P") { // 2 s = input.distance(from: input.startIndex, to: rangeS.lowerBound) } if let rangeS = input.range(of: "P", options: [.backwards]) { .. 2022. 2. 18.
[๋ฐฑ์ค€] 13549 ์ˆจ๋ฐ”๊ผญ์งˆ 3 dijkstra ๋ฌธ์ œ : https://www.acmicpc.net/problem/13549 13549๋ฒˆ: ์ˆจ๋ฐ”๊ผญ์งˆ 3 ์ˆ˜๋นˆ์ด๋Š” ๋™์ƒ๊ณผ ์ˆจ๋ฐ”๊ผญ์งˆ์„ ํ•˜๊ณ  ์žˆ๋‹ค. ์ˆ˜๋นˆ์ด๋Š” ํ˜„์žฌ ์  N(0 ≤ N ≤ 100,000)์— ์žˆ๊ณ , ๋™์ƒ์€ ์  K(0 ≤ K ≤ 100,000)์— ์žˆ๋‹ค. ์ˆ˜๋นˆ์ด๋Š” ๊ฑท๊ฑฐ๋‚˜ ์ˆœ๊ฐ„์ด๋™์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋งŒ์•ฝ, ์ˆ˜๋นˆ์ด์˜ ์œ„์น˜๊ฐ€ X์ผ www.acmicpc.net ํ’€์ด : ์ˆจ๋ฐ”๊ผญ์งˆ1 ๋ฌธ์ œ์™€ ๋‹ฌ๋ฆฌ ์ด๋ฒค์—๋Š” ์ˆœ๊ฐ„์ด๋™(M x 2)์‹œ ์‹œ๊ฐ„์€ 0์ดˆ๋ผ๋Š” ์กฐ๊ฑด์ด ๋‹ค๋ฅด๋‹ค. ์ฆ‰ ๊ฑท๊ธฐ(M-1, M+1) ์กฐ๊ฑด์‹œ์˜ ๊ฐ€์ค‘์น˜์™€ ์ˆœ๊ฐ„์ด๋™์˜ ๊ฐ€์ค‘์น˜๊ฐ€ ๋‹ฌ๋ผ ์ตœ์†Œ ์‹œ๊ฐ„์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด์„  ์ˆœ๊ฐ„์ด๋™์ด ์šฐ์„ ์‹œ ๋˜์–ด์•ผ ํ–ˆ๊ณ  ๊ฑฐ๋ฆฌ๊ฐ€ ์ž‘์€์ˆœ์œผ๋กœ ์ •๋ ฌํ•ด์ฃผ๋Š” ์šฐ์„ ์ˆœ์œ„ํ๋ฅผ ์‚ฌ์šฉํ•ด ๋‹ค์ต์Šคํฌ๋ผ๋ฅผ ์ ์šฉํ–ˆ๋‹ค. ๊ฐ€์ง€ ์•Š์•˜๋˜ ์œ„์น˜๊ฑฐ๋‚˜ ๋˜๋Š” ์ „์— ๊ฐ”์„๋•Œ์˜ ์‹œ๊ฐ„๋ณด๋‹ค ๋” ์ ๊ฒŒ ๊ฑธ.. 2022. 2. 17.
[๋ฐฑ์ค€] 1018 ์ฒด์ŠคํŒ ๋‹ค์‹œ ์น ํ•˜๊ธฐ brute force ๋ฌธ์ œ : https://www.acmicpc.net/problem/1018 1018๋ฒˆ: ์ฒด์ŠคํŒ ๋‹ค์‹œ ์น ํ•˜๊ธฐ ์ฒซ์งธ ์ค„์— N๊ณผ M์ด ์ฃผ์–ด์ง„๋‹ค. N๊ณผ M์€ 8๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 50๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๋ณด๋“œ์˜ ๊ฐ ํ–‰์˜ ์ƒํƒœ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. B๋Š” ๊ฒ€์€์ƒ‰์ด๋ฉฐ, W๋Š” ํฐ์ƒ‰์ด๋‹ค. www.acmicpc.net ํ’€์ด : ์ธํ’‹์œผ๋กœ ์ฃผ์–ด์ง„ ๋ฐฐ์—ด๊ณผ ์ฃผ์–ด์ง„ 8x8 ๋ฐฐ์—ด๊ณผ cnn ๋ชจ๋ธ์ฒ˜๋Ÿผ ํ•„ํ„ฐ๋งํ•˜๋“ฏ์ด ๋น„๊ตํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ๋”ฐ๋ผ์„œ ๋ธŒ๋ฃจํŠธํฌ์Šค๋กœ ๋น„๊ตํ•  ์ฒด์ŠคํŒ์˜ ๋ฒ”์œ„๋ฅผ ๋จผ์ € ์ •ํ•˜๊ณ , ๋ธ”๋ž™์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ์ฒด์ŠคํŒ or ํฐ์ƒ‰์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ์ฒด์ŠคํŒ ๋‘๊ฐ€์ง€ ๊ฒฝ์šฐ์˜ ์ˆ˜์™€ ๋Œ€์กฐํ•˜์—ฌ min ๊ฐ’์„ ์ฐพ์•„๋‚ธ๋‹ค. ์šฐ์„  for๋ฌธ์ด ๋งŽ๋‹ค๋Š” ์ ์— ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋‚ ๊นŒ ๊ฑฑ์ •ํ–ˆ์ง€๋งŒ ์ฒด์ŠคํŒ์˜ ํฌ๊ธฐ M x N ์™€ (50 x 50)๊ณผ ๋งŒ๋“  ์ฒด์ŠคํŒ.. 2022. 2. 17.
[๋ฐฑ์ค€] 1969 DNA ๋ฌธ์ œ : https://www.acmicpc.net/problem/1969 1969๋ฒˆ: DNA DNA๋ž€ ์–ด๋–ค ์œ ์ „๋ฌผ์งˆ์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ถ„์ž์ด๋‹ค. ์ด DNA๋Š” ์„œ๋กœ ๋‹ค๋ฅธ 4๊ฐ€์ง€์˜ ๋‰ดํด๋ ˆ์˜คํ‹ฐ๋“œ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค(Adenine, Thymine, Guanine, Cytosine). ์šฐ๋ฆฌ๋Š” ์–ด๋–ค DNA์˜ ๋ฌผ์งˆ์„ ํ‘œํ˜„ํ•  ๋•Œ, ์ด DNA๋ฅผ ์ด๋ฃจ๋Š” ๋‰ดํด๋ ˆ์˜ค www.acmicpc.net ํ’€์ด : ๊ฐ์œผ๋กœ ์—ด๊ฐ„ ๋น„๊ต๋ฅผ ํ†ตํ•ด ๊ฐ€์žฅ ๋งŽ์ด ๋‚˜์˜จ ๋ฌธ์ž๊ฐ€ ๊ทธ ์ž๋ฆฌ ์ธ๋ฑ์Šค๋ผ๋Š” ๊ฒƒ์„ ์•Œ์•˜์ง€๋งŒ ๋ฌธ์ž๊ฐ„์˜ ๊ฑฐ๋ฆฌ์˜ ์ฐจ๋ฅผ ๋ชจ๋‘ ๋”ํ•˜๋Š” ๊ฒƒ์ด ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ์ข‹์„์ง€ ๋ฐฉ๋ฒ•์ด ์ƒ๊ฐ๋‚˜์ง€ ์•Š์•˜๋‹ค. ๊ทธ๋Ÿฌ๋‹ค https://gusdnr69.tistory.com/31 ์š” ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ•ด ๋ฌธ์ž์™€ ๋‹ฌ๋ž๋˜ ๊ฐ’์„ ์—ด๋กœ ์นด์šดํŠธ ํ–ˆ๋‹ค๋Š” ์ ์ด ์‹ ๊ธฐํ–ˆ๋‹ค. (์•„์ง๋„ ๋ฐฐ์šธ๊ฒŒ ๋„ˆ๋ฌด ๋งŽ๋‹ค๋‹ˆ ๋งŽ.. 2022. 2. 16.
[๋ฆฌํŠธ์ฝ”๋“œ] 238. Product of Array Except Self ๋ฌธ์ œ : https://leetcode.com/problems/product-of-array-except-self/ Product of Array Except Self - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com ๋ถ„์„ : ์ด ๋ฌธ์ œ๋Š” ๊ตฌ๊ฐ„๊ณฑ ๋ฌธ์ œ๋‹ค ์กฐ๊ธˆ ํ‘ธ๋Š” ๋ฐฉ๋ฒ•์ด ์‹ ๊ธฐํ•ด์„œ ๊ธฐ๋กํ•ด๋ณด๋ ค๊ตฌ ํ•œ๋‹ค!! (์ ˆ๋Œ€ ์ƒ๊ฐ๋„ ๋ชปํ•œ ๋ฐฉ๋ฒ• .. ใ… ) ์ฒ˜์Œ์—” ์ž๊ธฐ ์ž์‹ ์„ ์ œ์™ธํ•œ ๊ณฒ์ด๋ผ ํ•ด์„œ 1. nums ๋ฐฐ์—ด์„ ๋ณต์‚ฌํ•œ copyํ•œ ๋ฐฐ์—ด ์ƒ์„ฑ 2. ๋ฐฐ์—ด ๋‚ด ๋ชจ๋“  ๊ณฒ์„ ๊ณฑํ•œ ๋’ค ์ œ์™ธํ•œ.. 2021. 12. 10.
[๋ฐฑ์ค€] 7576 ํ† ๋งˆํ†  BFS ๋ฌธ์ œ : https://www.acmicpc.net/problem/7576 7576๋ฒˆ: ํ† ๋งˆํ†  ์ฒซ ์ค„์—๋Š” ์ƒ์ž์˜ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋‘ ์ •์ˆ˜ M,N์ด ์ฃผ์–ด์ง„๋‹ค. M์€ ์ƒ์ž์˜ ๊ฐ€๋กœ ์นธ์˜ ์ˆ˜, N์€ ์ƒ์ž์˜ ์„ธ๋กœ ์นธ์˜ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๋‹จ, 2 ≤ M,N ≤ 1,000 ์ด๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ๋Š” ํ•˜๋‚˜์˜ ์ƒ์ž์— ์ €์žฅ๋œ ํ† ๋งˆํ†  www.acmicpc.net ๋ถ„์„ : ์ด๋Ÿฐ์‹์œผ๋กœ ํ† ๋งˆํ†  ๋†์žฅ์ด ์กด์žฌ ํ• ๋•Œ 1์€ ์ต์€ ํ† ๋งˆํ† , ์ •์ˆ˜ 0์€ ์ต์ง€ ์•Š์€ ํ† ๋งˆํ† , ์ •์ˆ˜ -1์€ ํ† ๋งˆํ† ๊ฐ€ ๋“ค์–ด์žˆ์ง€ ์•Š์€ ์นธ ์„ ์˜๋ฏธํ•œ๋‹ค. ์ต์€ ํ† ๋งˆํ†  ์ค‘์‹ฌ์œผ๋กœ ์ƒํ•˜์ขŒ์šฐ๋กœ ํ•˜๋ฃจ๋งˆ๋‹ค ํ† ๋งˆํ† ๊ฐ€ ์ต๋Š”๋ฐ ๋ช‡์ผ์ด๋ฉด ๋†์žฅ ๋‚ด ๋ชจ๋“  ํ† ๋งˆํ† ๊ฐ€ ์ต๋Š”์ง€ ๋‚ ์งœ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ์šฐ์„  ํ† ๋งˆํ†  ๋†์žฅ์„ ํƒ์ƒ‰ํ•œ๋‹ค๋Š” ์ ์—์„œ BFS, DFS๋กœ ์ ‘๊ทผํ•ด์•ผ ํ•œ๋‹ค ์ƒ๊ฐํ–ˆ๊ณ  ํƒ์ƒ‰์„ ํ•˜๋ฉด์„œ ๋ฐฉ๋ฌธํ•˜์ง€ .. 2021. 12. 10.
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ํ‘œํŽธ์ง‘ 2021 ์นด์นด์˜ค ์ธํ„ด์‹ญ STL(set) ๋ฌธ์ œ : https://programmers.co.kr/learn/courses/30/lessons/81303 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํ‘œ ํŽธ์ง‘ 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z"] "OOOOXOOO" 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z","U 1","C"] "OOXOXOOO" programmers.co.kr ๋ถ„์„ : ์ฃผ์–ด์ง„ ํ‘œ ์ •๋ณด๋ฅผ ๋ฒกํ„ฐ์— ๋‹ด์•„ erase, insert๋“ฑ ๊ธฐ๋ณธ STL ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ–ˆ์—ˆ๋‹ค. ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ๋งž์•˜์œผ๋‚˜ ์ •ํ™•์„ฑ ํ…Œ์ŠคํŠธ, ํšจ์œจ์„ฑ ํ…Œ์ŠคํŠธ์—์„œ segmentation fault ์—๋Ÿฌ๋ฅผ ๋ฐ›์•˜๊ณ  ๋ฒกํ„ฐ ๊ณต๊ฐ„์„ ์ง€์šฐ๊ณ  ๋‹ค์‹œ ์‚ฝ์ž…ํ•˜๋Š” ๊ณผ์ •์—์„œ ์ธ๋ฑ์Šค ๋ฒ”์œ„๋ฅผ ๋„˜์–ด์„œ๋Š” ๊ฒƒ ๊ฐ™์€ ์˜ค๋ฅ˜๋ฅผ ๋ฒ”ํ•œ๊ฑฐ ๊ฐ™๋‹ค. .. 2021. 9. 9.
[๋ฐฑ์ค€] 15681 ํŠธ๋ฆฌ์™€ ์ฟผ๋ฆฌ DP + DFS ๋ฌธ์ œ : https://www.acmicpc.net/problem/15681 15681๋ฒˆ: ํŠธ๋ฆฌ์™€ ์ฟผ๋ฆฌ ํŠธ๋ฆฌ์˜ ์ •์ ์˜ ์ˆ˜ N๊ณผ ๋ฃจํŠธ์˜ ๋ฒˆํ˜ธ R, ์ฟผ๋ฆฌ์˜ ์ˆ˜ Q๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (2 ≤ N ≤ 105, 1 ≤ R ≤ N, 1 ≤ Q ≤ 105) ์ด์–ด N-1์ค„์— ๊ฑธ์ณ, U V์˜ ํ˜•ํƒœ๋กœ ํŠธ๋ฆฌ์— ์†ํ•œ ๊ฐ„์„ ์˜ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ U, V ≤ N, U ≠ V) www.acmicpc.net ๋ถ„์„ : ๋ฐ‘์— ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ถ„๋ฅ˜๋ฅผ ๋ณด์•˜์„ ๋•Œ 'ํŠธ๋ฆฌ์—์„œ์˜ DP' ๊ฐ€ ๋ˆˆ์— ๋„์—ˆ๋‹ค. ํŠธ๋ฆฌ์—์„œ์˜ DP ? ๊ทธ๊ฒŒ ๋ญ์ง€ ๊ทธ๋Ÿฌ๋ฉด ํŠธ๋ฆฌ ์ž๋ฃŒ ๊ตฌ์กฐ๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๋Š” ๊ฑด๊ฐ€ ... ์‹ถ์–ด ๋‹ค๋ฅธ ๋ธ”๋กœ๊ทธ๋“ค์„ ์ฐธ๊ณ ํ•˜์˜€๋‹ค. https://chanhuiseok.github.io/posts/algo-56/ ์•Œ๊ณ ๋ฆฌ์ฆ˜ - ํŠธ๋ฆฌ DP ๋ฌธ์ œ ํ’€๊ธฐ(ํŠธ๋ฆฌ์—์„œ์˜ Dyna.. 2021. 9. 9.