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

ํŠธ๋ฆฌ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++] 19535. ใ„ทใ„ทใ„ทใ…ˆ ๋ฌธ์ œ https://www.acmicpc.net/problem/19535 ํ’€์ด ใ„ท ํŠธ๋ฆฌ : (n๊ณผ ์—ฐ๊ฒฐ๋œ ๋…ธ๋“œ(a ์ œ์™ธ)) - (n) - (n๊ณผ ์—ฐ๊ฒฐ๋œ ๋…ธ๋“œ(a)) - (a์™€ ์—ฐ๊ฒฐ๋œ ๋…ธ๋“œ(n ์ œ์™ธ)) ๋”ฐ๋ผ์„œ ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š” ๋ชจ๋“  ๋…ธ๋“œ(n)์— ๋Œ€ํ•ด์„œ, n๊ณผ ์—ฐ๊ฒฐ๋œ ๋…ธ๋“œ๊ฐ€ x๊ฐœ๋ผ๊ณ  ํ•˜๊ณ , n๊ณผ ์—ฐ๊ฒฐ๋œ ์–ด๋–ค ๋…ธ๋“œ a์™€ ์—ฐ๊ฒฐ๋œ ๋…ธ๋“œ๊ฐ€ y๊ฐœ๋ผ๊ณ  ํ•˜๋ฉด, (x-1) * (y-1) ์˜ ํ•ฉ์œผ๋กœ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค. * ์ค‘๋ณต์„ ๋ง‰๊ธฐ ์œ„ํ•ด, n์ด a๋ณด๋‹ค ๋…ธ๋“œ๋ฒˆํ˜ธ๊ฐ€ ํฐ ๊ฒฝ์šฐ๋งŒ ์…ˆ ใ…ˆ ํŠธ๋ฆฌ : (n) - (n๊ณผ ์—ฐ๊ฒฐ๋œ ๋…ธ๋“œ 3๊ฐœ) ๋”ฐ๋ผ์„œ ๊ฒฝ์šฐ์˜ ์ˆ˜๋Š”, ์—ฐ๊ฒฐ๋œ ๋…ธ๋“œ์˜ ๊ฐœ์ˆ˜ a๊ฐ€ 3 ์ด์ƒ์ธ ๋…ธ๋“œ n์— ๋Œ€ํ•ด์„œ aC3 ์˜ ์ด ํ•ฉ์„ ๊ตฌํ•˜๋ฉด ๋œ๋‹ค. ์ฝ”๋“œ #include #include using namespace std; int N; vector.. 2021. 7. 13.
[๋ฐฑ์ค€/C++] 3584. ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต์กฐ์ƒ ๋ฌธ์ œ https://www.acmicpc.net/problem/3584 ๋ฃจํŠธ๊ฐ€ ์žˆ๋Š” ํŠธ๋ฆฌ(rooted tree)๊ฐ€ ์ฃผ์–ด์ง€๊ณ , ๊ทธ ํŠธ๋ฆฌ ์ƒ์˜ ๋‘ ์ •์ ์ด ์ฃผ์–ด์งˆ ๋•Œ ๊ทธ๋“ค์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ(Nearest Common Anscestor)์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋ฉ๋‹ˆ๋‹ค. ๋‘ ๋…ธ๋“œ์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ์€, ๋‘ ๋…ธ๋“œ๋ฅผ ๋ชจ๋‘ ์ž์†์œผ๋กœ ๊ฐ€์ง€๋ฉด์„œ ๊นŠ์ด๊ฐ€ ๊ฐ€์žฅ ๊นŠ์€(์ฆ‰ ๋‘ ๋…ธ๋“œ์— ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด) ๋…ธ๋“œ๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 15์™€ 11๋ฅผ ๋ชจ๋‘ ์ž์†์œผ๋กœ ๊ฐ–๋Š” ๋…ธ๋“œ๋Š” 4์™€ 8์ด ์žˆ์ง€๋งŒ, ๊ทธ ์ค‘ ๊นŠ์ด๊ฐ€ ๊ฐ€์žฅ ๊นŠ์€(15์™€ 11์— ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด) ๋…ธ๋“œ๋Š” 4 ์ด๋ฏ€๋กœ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ์€ 4๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋ฃจํŠธ๊ฐ€ ์žˆ๋Š” ํŠธ๋ฆฌ๊ฐ€ ์ฃผ์–ด์ง€๊ณ , ๋‘ ๋…ธ๋“œ๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ ๊ทธ ๋‘ ๋…ธ๋“œ์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ์„ ์ฐพ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š” ํ’€์ด ์ž…๋ ฅ๋œ.. 2021. 7. 6.
๋ฐ˜์‘ํ˜•