๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ์žฅ์›์ต ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ

๐Ÿ’ป Computer Science/- Data Structure, Algorithm147

[์•Œ๊ณ ๋ฆฌ์ฆ˜ PS] ๋ฐฑ์ค€ 5014๋ฒˆ ์Šคํƒ€ํŠธ๋งํฌ ์ž๋ฐ” ๋ฌธ์ œํ’€์ด ๋ฌธ์ œ ํ•ด๋‹น ํฌ์ŠคํŒ…์€ ๋ฐฑ์ค€์˜ 5014๋ฒˆ ์Šคํƒ€ํŠธ ๋งํฌ ์˜ ์ ‘๊ทผ๊ณผ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•œ ๊ธ€ ์ž…๋‹ˆ๋‹ค. ์ •๋‹ต ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜์‹œ๋ ค๋ฉด solve url ์—์„œ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 5014๋ฒˆ: ์Šคํƒ€ํŠธ๋งํฌ ์ฒซ์งธ ์ค„์— F, S, G, U, D๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) ๊ฑด๋ฌผ์€ 1์ธต๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ณ , ๊ฐ€์žฅ ๋†’์€ ์ธต์€ F์ธต์ด๋‹ค. www.acmicpc.net ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋Š”์ง€๋ฅผ ๋จผ์ € ์ƒ๊ฐํ•ด๋ณด์ž. ๋ฌธ์ œ ์ ‘๊ทผ ์ด๋ฒˆ ๋ฌธ์ œ๋Š” ๊ฐ๊ฐ ์ธต ์ˆ˜๋กœ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ์ถœ๋ ฅํ•˜๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ํ•ด๊ฒฐ๋ฒ• ํ˜„์žฌ ์ธต์—์„œ ๋ชฉํ‘œ๋กœ ํ•˜๋Š” ์ธต ์ˆ˜๊ฐ€ ๊ฐ™๋‹ค๋ฉด 0์„ ์ถœ๋ ฅํ•˜๊ณ  ์—˜๋ ˆ๋ฒ ์ดํ„ฐ๋กœ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์ˆ˜๋Š” ํ˜„์žฌ ์ธต์—์„œ +u ํ•ด์ฃผ๊ณ  -d ๋ฅผ ํ•ด์ค€๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฐ๊ฐ์˜ .. 2021. 8. 7.
[์•Œ๊ณ ๋ฆฌ์ฆ˜ PS] ๋ฐฑ์ค€ 10026๋ฒˆ ์ ๋ก์ƒ‰์•ฝ ์ž๋ฐ” ๋ฌธ์ œํ’€์ด ๋ฌธ์ œ ํ•ด๋‹น ํฌ์ŠคํŒ…์€ ๋ฐฑ์ค€์˜ 10026๋ฒˆ ์ ๋ก์ƒ‰์•ฝ ์˜ ์ ‘๊ทผ๊ณผ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•œ ๊ธ€ ์ž…๋‹ˆ๋‹ค. ์ •๋‹ต ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜์‹œ๋ ค๋ฉด solve url ์—์„œ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 10026๋ฒˆ: ์ ๋ก์ƒ‰์•ฝ ์ ๋ก์ƒ‰์•ฝ์€ ๋นจ๊ฐ„์ƒ‰๊ณผ ์ดˆ๋ก์ƒ‰์˜ ์ฐจ์ด๋ฅผ ๊ฑฐ์˜ ๋Š๋ผ์ง€ ๋ชปํ•œ๋‹ค. ๋”ฐ๋ผ์„œ, ์ ๋ก์ƒ‰์•ฝ์ธ ์‚ฌ๋žŒ์ด ๋ณด๋Š” ๊ทธ๋ฆผ์€ ์•„๋‹Œ ์‚ฌ๋žŒ์ด ๋ณด๋Š” ๊ทธ๋ฆผ๊ณผ๋Š” ์ข€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค. ํฌ๊ธฐ๊ฐ€ N×N์ธ ๊ทธ๋ฆฌ๋“œ์˜ ๊ฐ ์นธ์— R(๋นจ๊ฐ•), G(์ดˆ๋ก) www.acmicpc.net ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋Š”์ง€๋ฅผ ๋จผ์ € ์ƒ๊ฐํ•ด๋ณด์ž. ๋ฌธ์ œ ์ ‘๊ทผ ์ด๋ฒˆ ๋ฌธ์ œ๋Š” BFS ๋‚˜ DFS ๊ฐ™์€ ๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰์— ๊ตฌํ˜„๋ ฅ์ด ์กฐ๊ธˆ ์š”๊ตฌ๋˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ์‚ฌ์‹ค BFS๋‚˜ DFS ๋ฅผ ์ž˜ ๋‹ค๋ฃฐ ์ค„ ์•ˆ๋‹ค๋ฉด, ํ˜น์€ Silver 1 ๋ฌธ์ œ๊นŒ์ง€ ๋ง‰ํž˜์—†์ด ํ’€ ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ฐ€๋ฒผ์šด ๋ฌธ์ œ์˜€๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค... 2021. 8. 4.
[์•Œ๊ณ ๋ฆฌ์ฆ˜ PS] ๋ฐฑ์ค€ 14502๋ฒˆ ์—ฐ๊ตฌ์†Œ ์ž๋ฐ” ๋ฌธ์ œํ’€์ด ๋ฌธ์ œ ํ•ด๋‹น ํฌ์ŠคํŒ…์€ ๋ฐฑ์ค€์˜ ๋ฐฑ์ค€ 14502๋ฒˆ ์—ฐ๊ตฌ์†Œ ์˜ ์ ‘๊ทผ๊ณผ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•œ ๊ธ€ ์ž…๋‹ˆ๋‹ค. ์ •๋‹ต ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜์‹œ๋ ค๋ฉด solve url ์—์„œ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 14502๋ฒˆ: ์—ฐ๊ตฌ์†Œ ์ธ์ฒด์— ์น˜๋ช…์ ์ธ ๋ฐ”์ด๋Ÿฌ์Šค๋ฅผ ์—ฐ๊ตฌํ•˜๋˜ ์—ฐ๊ตฌ์†Œ์—์„œ ๋ฐ”์ด๋Ÿฌ์Šค๊ฐ€ ์œ ์ถœ๋˜์—ˆ๋‹ค. ๋‹คํ–‰ํžˆ ๋ฐ”์ด๋Ÿฌ์Šค๋Š” ์•„์ง ํผ์ง€์ง€ ์•Š์•˜๊ณ , ๋ฐ”์ด๋Ÿฌ์Šค์˜ ํ™•์‚ฐ์„ ๋ง‰๊ธฐ ์œ„ํ•ด์„œ ์—ฐ๊ตฌ์†Œ์— ๋ฒฝ์„ ์„ธ์šฐ๋ ค๊ณ  ํ•œ๋‹ค. ์—ฐ๊ตฌ์†Œ๋Š” ํฌ www.acmicpc.net ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋Š”์ง€๋ฅผ ๋จผ์ € ์ƒ๊ฐํ•ด๋ณด์ž. ๋ฌธ์ œ ์ ‘๊ทผ ์ด ๋ฌธ์ œ๋Š” DFS์™€ BFS ๋ฅผ ๋ชจ๋‘ ์ด์šฉํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ํŽธํ•˜๋‹ค. ๋ฒฝ์„ ์„ธ์šฐ๋Š” ๊ฒƒ์„ DFS ๋ฅผ ์ด์šฉํ•˜๋ฉด ๋˜๊ณ , ๋ฐ”์ด๋Ÿฌ์Šค๋ฅผ ํผํŠธ๋ฆฌ๋Š” ๊ฒƒ์„ BFS ๋กœ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ •๋‹ต ์ฝ”๋“œ public class Main { private st.. 2021. 8. 3.
[์•Œ๊ณ ๋ฆฌ์ฆ˜ PS] ๋ฐฑ์ค€ 5567๋ฒˆ ๊ฒฐํ˜ผ์‹ ์ž๋ฐ” ๋ฌธ์ œํ’€์ด ๋ฌธ์ œ ํ•ด๋‹น ํฌ์ŠคํŒ…์€ ๋ฐฑ์ค€์˜ 5567๋ฒˆ ๊ฒฐํ˜ผ์‹ ์˜ ์ ‘๊ทผ๊ณผ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•œ ๊ธ€ ์ž…๋‹ˆ๋‹ค. ์ •๋‹ต ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜์‹œ๋ ค๋ฉด solve url ์—์„œ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋Š”์ง€๋ฅผ ๋จผ์ € ์ƒ๊ฐํ•ด๋ณด์ž. ๋ฌธ์ œ ์ ‘๊ทผ ์ด ๋ฌธ์ œ๋Š” ์‹œ์ž‘ ๋…ธ๋“œ๋ถ€ํ„ฐ ์–ผ๋งˆ๋‚˜ ๋–จ์–ด์ ธ ์žˆ๋Š”์ง€๋ฅผ ํ™•์ธํ•˜๊ณ  ๋–จ์–ด์ง„ ๊ฑฐ๋ฆฌ๊ฐ€ 2 ์ด์ƒ 3 ์ดํ•˜๋ฉด count ๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ํ•ด๊ฒฐ๋ฒ• ์‹œ์ž‘ ๋…ธ๋“œ๋ถ€ํ„ฐ ๋‹ค๋ฅธ ๋ชจ๋“  ๋…ธ๋“œ๊นŒ์ง€์˜ ๊ฑฐ๋ฆฌ๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด BFS ๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋”ฐ. ์ •๋‹ต ์ฝ”๋“œ public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStr.. 2021. 8. 2.
[์•Œ๊ณ ๋ฆฌ์ฆ˜ PS] ๋ฐฑ์ค€ 1389 ์ผ€๋นˆ ๋ฒ ์ด์ปจ์˜ 6๋‹จ๊ณ„ ๋ฒ•์น™ ์ž๋ฐ” ๋ฌธ์ œํ’€์ด ๋ฌธ์ œ ํ•ด๋‹น ํฌ์ŠคํŒ…์€ ๋ฐฑ์ค€์˜ 1389๋ฒˆ ์ผ€๋นˆ ๋ฒ ์ด์ปจ์˜ 6๋‹จ๊ณ„ ๋ฒ•์น™ ์˜ ์ ‘๊ทผ๊ณผ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•œ ๊ธ€ ์ž…๋‹ˆ๋‹ค. ์ •๋‹ต ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜์‹œ๋ ค๋ฉด solve url ์—์„œ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 1389๋ฒˆ: ์ผ€๋นˆ ๋ฒ ์ด์ปจ์˜ 6๋‹จ๊ณ„ ๋ฒ•์น™ ์ฒซ์งธ ์ค„์— ์œ ์ €์˜ ์ˆ˜ N (2 ≤ N ≤ 100)๊ณผ ์นœ๊ตฌ ๊ด€๊ณ„์˜ ์ˆ˜ M (1 ≤ M ≤ 5,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ M๊ฐœ์˜ ์ค„์—๋Š” ์นœ๊ตฌ ๊ด€๊ณ„๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์นœ๊ตฌ ๊ด€๊ณ„๋Š” A์™€ B๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์œผ๋ฉฐ, A์™€ B๊ฐ€ ์นœ๊ตฌ๋ผ๋Š” ๋œป www.acmicpc.net ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋Š”์ง€๋ฅผ ๋จผ์ € ์ƒ๊ฐํ•ด๋ณด์ž. ๋ฌธ์ œ ์ ‘๊ทผ ์ด๋ฒˆ ๋ฌธ์ œ๋Š” ์–ด๋Š ํ•œ ๋…ธ๋“œ์—์„œ ๋ชจ๋“œ ๋…ธ๋“œ ๊นŒ์ง€ ๋ฐฉ๋ฌธํ•˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์ตœ์†Œ ๋น„์šฉ์„ ๋ฌผ์–ด๋ณด๋Š” ๋ฌธ์ œ์ด๋‹ค. ํ•ด๊ฒฐ๋ฒ• DFS ๋‚˜ BFS ๋ชจ๋‘๋ฅผ ์ด์šฉํ•ด์„œ ํ’€ ์ˆ˜ ์žˆ์ง€๋งŒ .. 2021. 8. 2.
[์•Œ๊ณ ๋ฆฌ์ฆ˜ PS] ๋ฐฑ์ค€ 11725๋ฒˆ ํŠธ๋ฆฌ์˜ ๋ถ€๋ชจ ์ฐพ๊ธฐ ์ž๋ฐ” ๋ฌธ์ œํ’€์ด ๋ฌธ์ œ ํ•ด๋‹น ํฌ์ŠคํŒ…์€ ๋ฐฑ์ค€์˜ ๋ฌธ์ œ ์ด๋ฆ„ ์˜ ์ ‘๊ทผ๊ณผ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•œ ๊ธ€ ์ž…๋‹ˆ๋‹ค. ์ •๋‹ต ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜์‹œ๋ ค๋ฉด solve url ์—์„œ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 11725๋ฒˆ: ํŠธ๋ฆฌ์˜ ๋ถ€๋ชจ ์ฐพ๊ธฐ ๋ฃจํŠธ ์—†๋Š” ํŠธ๋ฆฌ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด๋•Œ, ํŠธ๋ฆฌ์˜ ๋ฃจํŠธ๋ฅผ 1์ด๋ผ๊ณ  ์ •ํ–ˆ์„ ๋•Œ, ๊ฐ ๋…ธ๋“œ์˜ ๋ถ€๋ชจ๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. www.acmicpc.net ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋Š”์ง€๋ฅผ ๋จผ์ € ์ƒ๊ฐํ•ด๋ณด์ž. ๋ฌธ์ œ ์ ‘๊ทผ ์ด๋ฒˆ ๋ฌธ์ œ๋Š” ์ฃผ์–ด์ง„ ์ž…๋ ฅ์˜ ์ˆœ์„œ๋Œ€๋กœ ์ž์‹๊ณผ ๋ถ€๋ชจ์˜ ๊ด€๊ณ„ ๋ผ๊ณ  ์ƒ๊ฐํ•ด์„œ ์กฐ๊ธˆ ์˜ค๋ž˜ ๊ฑธ๋ ธ๋˜ ๋ฌธ์ œ์ด๋‹ค. ๊ทธ๋ž˜์„œ ๋‚˜๋Š” Tree ์˜ ํŠน์„ฑ๊ณผ ๊ฐœ๋…์„ ์ด์šฉํ•ด์„œ Node ๋ฅผ ๋งŒ๋“ค์–ด ํ’€๋ ค๊ณ  ํ–ˆ์ง€๋งŒ, ๊ณ„์† ์•ˆ๋˜๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ํ’€์ด๋ฅผ ๋ณด๋‹ˆ DFS ๋ฅผ ์ด์šฉํ•ด์„œ ํ‘ธ๋Š”๊ฒŒ ์ •์„์ธ ๋ฐฉ๋ฒ• ๊ฐ™์•˜๋‹ค. ํ•ด๊ฒฐ๋ฒ• ์šฐ์„  ํŠธ๋ฆฌ์˜ ์—ฐ๊ฒฐ ๊ด€.. 2021. 8. 2.