๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

์•Œ๊ณ ๋ฆฌ์ฆ˜5

[๋ฐฑ์ค€/C++] 17370. ์œก๊ฐํ˜• ์šฐ๋ฆฌ ์†์˜ ๊ฐœ๋ฏธ ๋ฌธ์ œ https://www.acmicpc.net/problem/17370 17370๋ฒˆ: ์œก๊ฐํ˜• ์šฐ๋ฆฌ ์†์˜ ๊ฐœ๋ฏธ ๋ฌดํ•œํžˆ ๋งŽ์€ ์ •์œก๊ฐํ˜•์ด ์„œ๋กœ ๋งž๋‹ฟ์•„ ๋†“์ธ ํ˜•ํƒœ์˜ ๊ฐœ๋ฏธ ์šฐ๋ฆฌ๊ฐ€ ์žˆ๋‹ค. ๋‹ค์Œ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์€ ํ˜•ํƒœ์ด๊ณ , ํ•˜์–€์ƒ‰ ๋ณ€์œผ๋กœ๋งŒ ๊ฐœ๋ฏธ๊ฐ€ ๋‹ค๋‹ ์ˆ˜ ์žˆ๋‹ค. ๊ฐœ๋ฏธ ์šฐ๋ฆฌ์˜ ๋ชจ์Šต ๊ณค์ถฉ ๊ด€์ฐฐ์ด ์ทจ๋ฏธ์ธ ์œ ์ด๋Š” ์„ธ ์ •์œก๊ฐ www.acmicpc.net ๋ฌดํ•œํžˆ ๋งŽ์€ ์ •์œก๊ฐํ˜•์ด ์„œ๋กœ ๋งž๋‹ฟ์•„ ๋†“์ธ ํ˜•ํƒœ์˜ ๊ฐœ๋ฏธ ์šฐ๋ฆฌ๊ฐ€ ์žˆ๋‹ค. ๋‹ค์Œ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์€ ํ˜•ํƒœ์ด๊ณ , ํ•˜์–€์ƒ‰ ๋ณ€์œผ๋กœ๋งŒ ๊ฐœ๋ฏธ๊ฐ€ ๋‹ค๋‹ ์ˆ˜ ์žˆ๋‹ค. ๊ณค์ถฉ ๊ด€์ฐฐ์ด ์ทจ๋ฏธ์ธ ์œ ์ด๋Š” ์„ธ ์ •์œก๊ฐํ˜•์ด ์„œ๋กœ ๋งž๋‹ฟ์•„ ์žˆ๋Š” ์–ด๋–ค ์  ์œ„์— ๊ฐœ๋ฏธ๋ฅผ ํ•˜๋‚˜ ์˜ฌ๋ ธ๋‹ค. ์ด๋ ‡๊ฒŒ ์šฐ๋ฆฌ์— ์˜ฌ๋ผ์˜จ ๊ฐœ๋ฏธ๋Š” ๊ทธ ์ž์‹ ์—๊ฒŒ ๋ฏธ์ง€์˜ ์˜์—ญ์ธ ์šฐ๋ฆฌ๋ฅผ ํŽ˜๋กœ๋ชฌ์„ ๋ฟŒ๋ฆฌ๋ฉฐ ํƒ์ƒ‰ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค. ์ฒ˜์Œ ๊ฐœ๋ฏธ๋Š” ์ ๊ณผ ์—ฐ๊ฒฐ๋œ ์„ธ ๋ณ€ ์ค‘ ํ•˜๋‚˜๋ฅผ ํ–ฅํ•ด ์ด๋™.. 2021. 8. 24.
[๋ฐฑ์ค€/C++] 18119. ๋‹จ์–ด ์•”๊ธฐ ๋ฌธ์ œ https://www.acmicpc.net/problem/18119 18119๋ฒˆ: ๋‹จ์–ด ์•”๊ธฐ ์ค€์„์ด๋Š” ์˜์–ด ๋‹จ์–ด๋ฅผ ์™ธ์šฐ๋ ค๊ณ  ํ•œ๋‹ค. ์‚ฌ์ „์—๋Š” N๊ฐ€์ง€ ๋‹จ์–ด๊ฐ€ ์ ํ˜€ ์žˆ๋‹ค. ๋ชจ๋“  ๋‹จ์–ด๋Š” ์†Œ๋ฌธ์ž์ด๋‹ค. ๋‹จ์–ด ์•ˆ์— ์žˆ๋Š” ๋ชจ๋“  ์•ŒํŒŒ๋ฒณ์„ ์•Œ ๋•Œ, ๊ทธ ๋‹จ์–ด๋ฅผ ์™„์ „ํžˆ ์•ˆ๋‹ค๊ณ  ํ•œ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฟผ๋ฆฌ๋“ค์ด ์ฃผ www.acmicpc.net ์ค€์„์ด๋Š” ์˜์–ด ๋‹จ์–ด๋ฅผ ์™ธ์šฐ๋ ค๊ณ  ํ•œ๋‹ค. ์‚ฌ์ „์—๋Š” N๊ฐ€์ง€ ๋‹จ์–ด๊ฐ€ ์ ํ˜€ ์žˆ๋‹ค. ๋ชจ๋“  ๋‹จ์–ด๋Š” ์†Œ๋ฌธ์ž์ด๋‹ค. ๋‹จ์–ด ์•ˆ์— ์žˆ๋Š” ๋ชจ๋“  ์•ŒํŒŒ๋ฒณ์„ ์•Œ ๋•Œ, ๊ทธ ๋‹จ์–ด๋ฅผ ์™„์ „ํžˆ ์•ˆ๋‹ค๊ณ  ํ•œ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฟผ๋ฆฌ๋“ค์ด ์ฃผ์–ด์ง„๋‹ค. 1 x : ์•ŒํŒŒ๋ฒณ x๋ฅผ ์žŠ๋Š”๋‹ค. 2 x : ์•ŒํŒŒ๋ฒณ x๋ฅผ ๊ธฐ์–ตํ•ด ๋‚ธ๋‹ค. ์ฒ˜์Œ์— ๋ชจ๋“  ์•ŒํŒŒ๋ฒณ์„ ๊ธฐ์–ตํ•˜๋Š” ์ƒํƒœ๊ณ , ๋ชจ์Œ์€ ์™„๋ฒฝํ•˜๊ฒŒ ์™ธ์› ๊ธฐ ๋•Œ๋ฌธ์— ์ ˆ๋Œ€ ์žŠ์ง€ ์•Š๋Š”๋‹ค. ๊ฐ ์ฟผ๋ฆฌ๋งˆ๋‹ค ์™„์ „ํžˆ ์•Œ๊ณ  ์žˆ๋Š”.. 2021. 8. 10.
[๋ฐฑ์ค€/C++] 13701. ์ค‘๋ณต ์ œ๊ฑฐ ๋ฌธ์ œ https://www.acmicpc.net/problem/13701 13701๋ฒˆ: ์ค‘๋ณต ์ œ๊ฑฐ ๋ฌธ์ œ: N๊ฐœ์˜ ์ •์ˆ˜ A1, A2, ..., AN ์„ ์ฝ๊ณ , ์ด๋“ค ์ค‘์—์„œ ๋ฐ˜๋ณต๋˜๋Š” ์ˆ˜๋ฅผ ์ œ์™ธํ•˜๊ณ  ๋‚จ์€ N'๊ฐœ์˜ ์ˆ˜ B1, B2, ..., BN’ ์„ ์ž…๋ ฅ๋œ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅํ•˜์‹œ์˜ค. ์ด๋•Œ, 0 ≤ Ai < 225 = 33554432, i=1,2,…,N. ์ž…๋ ฅ์˜ ๊ฐœ์ˆ˜ N์€ 1 www.acmicpc.net N๊ฐœ์˜ ์ •์ˆ˜ A1, A2, ..., AN ์„ ์ฝ๊ณ , ์ด๋“ค ์ค‘์—์„œ ๋ฐ˜๋ณต๋˜๋Š” ์ˆ˜๋ฅผ ์ œ์™ธํ•˜๊ณ  ๋‚จ์€ N'๊ฐœ์˜ ์ˆ˜ B1, B2, ..., BN’ ์„ ์ž…๋ ฅ๋œ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅํ•˜์‹œ์˜ค. ์ด๋•Œ, 0 ≤ Ai < 2^25 = 33554432, i=1,2,…,N. ์ž…๋ ฅ์˜ ๊ฐœ์ˆ˜ N์€ 1 ์ด์ƒ 500๋งŒ ์ดํ•˜์ด๋‹ค. ํ’€์ด ์ˆซ์ž๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์ž…๋ ฅ๋ฐ›์•„.. 2021. 8. 3.
[๋ฐฑ์ค€/C++] 10838. ํŠธ๋ฆฌ ๋ฌธ์ œ https://www.acmicpc.net/problem/10838 N๊ฐœ์˜ ๋…ธ๋“œ๋กœ ๊ตฌ์„ฑ๋œ ๋ฃจํŠธ๊ฐ€ ์žˆ๋Š” ํŠธ๋ฆฌ๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ๋…ธ๋“œ๋Š” 0๋ถ€ํ„ฐ N-1๊นŒ์ง€์˜ ๋ฒˆํ˜ธ๋กœ ๊ตฌ๋ณ„๋˜๊ณ , 0๋ฒˆ ๋…ธ๋“œ๋Š” ๋ฃจํŠธ ๋…ธ๋“œ์ด๊ณ , ๋‚˜๋จธ์ง€ ๋…ธ๋“œ ๊ฐ๊ฐ์€ 0๋ฒˆ ๋…ธ๋“œ์˜ ์ž์‹ ๋…ธ๋“œ์ด๋‹ค. ํŠธ๋ฆฌ์— ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์—ฐ์‚ฐ์€ ์„ธ ์ข…๋ฅ˜์ด๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด ํŠธ๋ฆฌ์˜ ๋ชจ์–‘์„ ๋ฐ”๊พธ๊ฑฐ๋‚˜ ํŠธ๋ฆฌ ์—์ง€์— ์ƒ‰์น ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ฐ ์—ฐ์‚ฐ๊ณผ ๊ทธ ์˜๋ฏธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. paint(a, b, c): a๋ฒˆ ๋…ธ๋“œ์™€ b๋ฒˆ ๋…ธ๋“œ๋ฅผ ์ž‡๋Š” ์ตœ๋‹จ ๊ฒฝ๋กœ๋ฅผ ์ฐพ์€ ํ›„, ๊ฒฝ๋กœ ์ƒ์— ์žˆ๋Š” ๋ชจ๋“  ์—์ง€๋ฅผ ์ƒ‰๊น” c๋กœ ์น ํ•œ๋‹ค. move(a, b): a๋ฒˆ ๋…ธ๋“œ์˜ ๋ถ€๋ชจ ๋…ธ๋“œ๋ฅผ b๋ฒˆ ๋…ธ๋“œ๋กœ ๋ฐ”๊พผ๋‹ค. ๋‹จ, b๋ฒˆ ๋…ธ๋“œ๋Š” a๋ฒˆ ๋…ธ๋“œ๋ฅผ ๋ฃจํŠธ๋กœ ํ•˜๋Š” ๋ถ€ํŠธ๋ฆฌ(subtree)์— ์†ํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋ถ€๋ชจ ๋…ธ๋“œ๋ฅผ ๋ฐ”๊พธ๊ธฐ.. 2021. 7. 20.
[๋ฐฑ์ค€/C++] 1520. ๋‚ด๋ฆฌ๋ง‰ ๊ธธ ๋ฌธ์ œ www.acmicpc.net/problem/1520 1520๋ฒˆ: ๋‚ด๋ฆฌ๋ง‰ ๊ธธ ์—ฌํ–‰์„ ๋– ๋‚œ ์„ธ์ค€์ด๋Š” ์ง€๋„๋ฅผ ํ•˜๋‚˜ ๊ตฌํ•˜์˜€๋‹ค. ์ด ์ง€๋„๋Š” ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์ง์‚ฌ๊ฐํ˜• ๋ชจ์–‘์ด๋ฉฐ ์—ฌ๋Ÿฌ ์นธ์œผ๋กœ ๋‚˜๋‰˜์–ด์ ธ ์žˆ๋‹ค. ํ•œ ์นธ์€ ํ•œ ์ง€์ ์„ ๋‚˜ํƒ€๋‚ด๋Š”๋ฐ ๊ฐ ์นธ์—๋Š” ๊ทธ ์ง€์ ์˜ ๋†’์ด๊ฐ€ ์“ฐ์—ฌ ์žˆ์œผ www.acmicpc.net ํ’€์ด ์ฒ˜์Œ์—๋Š” DP๋งŒ ์ด์šฉํ•ด์„œ, cache[i][j]์— (i,j) ์œ„์น˜๊นŒ์ง€ ๋„์ฐฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๋‚ด๋ฆฌ๋ง‰๊ธธ ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ €์žฅํ•˜๋ ค๊ณ  ํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ, ์ƒํ•˜์ขŒ์šฐ๋กœ ๋ชจ๋‘ ์ด๋™์ด ๊ฐ€๋Šฅํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ฐฉ๋ฒ•์€ ์‹คํŒจํ–ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ์ƒ๊ฐ๋‚œ ๋ฐฉ๋ฒ•์€, ์ตœ๋‹จ๊ฒฝ๋กœ์ฐพ๊ธฐ ๋ฌธ์ œ๋กœ ํ•ด์„ํ•ด์„œ BFS๋กœ ํ‘ธ๋Š” ๋ฐฉ๋ฒ•์ด์—ˆ๋‹ค. ํ•˜์ง€๋งŒ, ์‹œ๊ฐ„์ดˆ๊ณผ ๋•Œ๋ฌธ์— ์ด ๋ฐฉ๋ฒ•์€ ์‹คํŒจํ–ˆ๋‹ค. ์ตœ์ข… ๋ฐฉ๋ฒ•์€, DFS์— DP๋ฅผ ์ ‘๋ชฉํ•œ ๋ฐฉ๋ฒ•์ด๋‹ค. DFS๋กœ ํƒ์ƒ‰ํ•˜๋˜, DP์˜ ๋ฉ”๋ชจ๋ฆฌ.. 2021. 3. 14.
๋ฐ˜์‘ํ˜•