๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก๊ฐœ๋ฐœ์ž์ทจ์—… (3)

Unfazedโ—๏ธ๐ŸŽฏ

[Java] ์ •๋ ฌ, ๊ทธ๋ฆฌ๋”” | ๋ฐฑ์ค€ 1083 ์†ŒํŠธ

https://www.acmicpc.net/problem/1083 ์ ‘๊ทผ ๋ฐฉ๋ฒ• : ๊ทธ๋ฆฌ๋””ํ•˜๊ฒŒ ๊ฐ ์œ„์น˜์—์„œ ํ˜„์žฌ ๋ฒ”์œ„ ๋‚ด ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์•ž์œผ๋กœ ์ด๋™์‹œํ‚จ๋‹ค.- S์˜ ์ œํ•œ ๋•Œ๋ฌธ์—, ๊ฐ€๋Šฅํ•œ ๊ตํ™˜ ํšŸ์ˆ˜(j - i  ๋‘ ์›์†Œ ๊ตํ™˜ ๊ณผ์ • :ํ˜„์žฌ ์œ„์น˜ i ์—์„œ i+1๋ถ€ํ„ฐ i+S๋ฒ”์œ„ ๋‚ด์—์„œ ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์ฐพ๋Š”๋‹ค.ํ•ด๋‹น ๊ฐ’์„ i๋กœ ์ด๋™์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์ธ์ ‘ ์›์†Œ ๊ฐ„ ๊ตํ™˜์„ ๋ฐ˜๋ณตํ•œ๋‹ค. (๋ฒ„๋ธ” ์†ŒํŠธ์™€ ์œ ์‚ฌ)๊ฐ’์„ ์ด๋™ ์‹œํ‚ค๋Š” ๋ฐ ์‚ฌ์šฉํ•œ ๊ตํ™˜ ํšŸ์ˆ˜๋งŒํผ S๋ฅผ ๊ฐ์†Œ์‹œํ‚จ๋‹ค.์ข…๋ฃŒ ์กฐ๊ฑด : S๊ฐ€ 0์ด ๋˜๊ฑฐ๋‚˜, ๋ฐฐ์—ด์„ ๋๊นŒ์ง€ ํƒ์ƒ‰ํ–ˆ์„ ๊ฒฝ์šฐ ์ข…๋ฃŒ ํ•ต์‹ฌ ์ฝ”๋“œ S ์ œํ•œ ๋‚ด์—์„œ ๊ฐ€์žฅ ์™ผ์ชฝ ์ž๋ฆฌ๋ถ€ํ„ฐ ์ตœ๋Œ€ ๊ฐ’์œผ๋กœ ์ฑ„์›Œ์ฃผ๋Š” ๊ฒƒ์— ์ง‘์ค‘ํ•œ๋‹ค.๋งค ๋ฐ˜๋ณต ๋งˆ๋‹ค S-=(maxIndex - i); ๋กœ ๊ตํ™˜ํ•œ ํšŸ์ˆ˜๋งŒํผ S๋ฅผ ๊ฐ์†Œ์‹œ์ผœ์ค€๋‹ค.private static void s..

[Java] ๋‹ค์ต์ŠคํŠธ๋ผ, BFS | ๋ฐฑ์ค€ 2665 ๋ฏธ๋กœ๋งŒ๋“ค๊ธฐ

https://www.acmicpc.net/problem/2665  ์ ‘๊ทผ ๋ฐฉ๋ฒ•  ์ด ๋ฌธ์ œ๋Š” ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ™œ์šฉํ•˜์—ฌ ํ’€ ์ˆ˜ ์žˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ๊ฐ ๋ฐฉ์„ ๋…ธ๋“œ๋กœ ๋ณด๊ณ , ๊ฒ€์€ ๋ฐฉ์—์„œ ํฐ ๋ฐฉ์œผ๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ์ž‘์—…์„ ๊ฐ€์ค‘์น˜๋กœ ๊ฐ„์ฃผํ•ด ์ตœ์†Œ ๋ณ€๊ฒฝ ํšŸ์ˆ˜ ๊ฒฝ๋กœ๋ฅผ ๊ตฌํ•œ๋‹ค. ์ตœ๋‹จ ๊ฒฝ๋กœ๊ฐ€ ์•„๋‹Œ '์ตœ์†Œ ๋ณ€๊ฒฝ ํšŸ์ˆ˜'๋ฅผ ์ฐพ๋Š”๋‹ค๋Š” ์ ์ด ์ผ๋ฐ˜์ ์ธ ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ์˜ ์ฐจ์ด๋‹ค. ์‹œ์ž‘๋ถ€ํ„ฐ ๋๋ฐฉ๊นŒ์ง€ ๊ฐ€๋Š” ๋™์•ˆ ๊ฒ€์€ ๋ฐฉ(0)์„ ์ตœ์†Œ๋กœ ์ง€๋‚˜์•ผ ํ•œ๋‹ค.์ฆ‰ ํฐ ๋ฐฉ(1)์„ ์ง€๋‚˜๊ฐˆ ๋•Œ๋Š” ๋น„์šฉ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๊ณ  ๊ฒ€์€ ๋ฐฉ(0)์„ ๊ฑฐ์น  ๋•Œ๋Š” ๋น„์šฉ์ด 1 ๋งŒํผ ๋ฐœ์ƒํ•œ๋‹ค๊ณ  ๊ฐ„์ฃผํ•˜๊ณ , ์‹œ์ž‘๋ถ€ํ„ฐ ๋๋ฐฉ๊นŒ์ง€ BFS๋ฅผ ์ง„ํ–‰ํ•˜์—ฌ ์ตœ์†Œ ๋น„์šฉ์œผ๋กœ ๋๋ฐฉ์— ๋„์ฐฉํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ๊ตฌํ•˜๋ฉด ๋œ๋‹ค. ์šฐ์„ ์ˆœ์œ„ ํ(PriorityQueue)๋ฅผ ์‚ฌ์šฉํ•ด ํ˜„์žฌ ๋ณ€๊ฒฝ ํšŸ์ˆ˜๊ฐ€ ๊ฐ€์žฅ ์ ์€ ๊ฒฝ๋กœ๋ถ€ํ„ฐ ํƒ์ƒ‰ํ•œ๋‹ค..

[Java] ๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰, ํ”Œ๋กœ์ด๋“œ–์›Œ์…œ | ๋ฐฑ์ค€ 11403 ๊ฒฝ๋กœ์ฐพ๊ธฐ

https://www.acmicpc.net/problem/11403 ์ ‘๊ทผ ๋ฐฉ์‹  ์šฐ์„  ์ •์  i์—์„œ j๋กœ ๊ฐ€๋Š” ๊ธธ์ด๊ฐ€ ์–‘์ˆ˜์ธ ๊ฒฝ๋กœ์˜ ์˜๋ฏธ๋ฅผ ์ดํ•ดํ•˜๋ ค ํ•ด๋ณด์•˜๋‹ค.๊ทธ๋ž˜ํ”„ G์—์„œ ์ •์  (i,j)๋Š”  i์—์„œ j๋กœ ๊ฐ€๋Š” ๊ฐ„์„ ์˜ ์œ ๋ฌด๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.๊ทธ๋ž˜ํ”„ G์˜ ์ •์ (i,j)๋Š” ๋…ธ๋“œ i์—์„œ ๋…ธ๋“œ j๋กœ ์ง์ ‘ ์—ฐ๊ฒฐ๋œ ๊ฐ„์„ ์ด ์žˆ์–ด์•ผ 1์ด ๋˜๋Š” ๋ฐ˜๋ฉด, ์ •์  i์—์„œ j๋กœ ๊ฐ€๋Š” ๊ธธ์ด๊ฐ€ ์–‘์ˆ˜์ธ ๊ฒฝ๋กœ๋Š” ๋…ธ๋“œ i์—์„œ 1๊ฐœ ์ด์ƒ์˜ ๊ฐ„์„ ์„ ๊ฑฐ์ณ ๋…ธ๋“œ j๋กœ ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ์ฃผ๋ชฉํ•œ๋‹ค.๋…ธ๋“œ 1๊ณผ ๋…ธ๋“œ 2 ์‚ฌ์ด์— ์ง์ ‘ ์—ฐ๊ฒฐ๋œ ๊ฐ„์„ ์ด ์—†์–ด๋„ ๋…ธ๋“œ 1 => (๋…ธ๋“œ x1 => ... => ๋…ธ๋“œ xn) => ๋…ธ๋“œ 2 ์™€ ๊ฐ™์ด ์—ฐ๊ฒฐ๋  ์ˆ˜ ์žˆ๋‹ค๋ฉด (๋…ธ๋“œ 1, ๋…ธ๋“œ 2)์€ 1์ธ ๊ฒฝ์šฐ๊ฐ€ ๋œ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ทธ๋ž˜ํ”„ G์—์„œ 1์ธ G[i][j]๋Š” ์šฐ๋ฆฌ๊ฐ€ ๊ตฌํ•˜๊ณ ์žํ•˜๋Š”..