[๋ฐฑ์ค€] 7576 : ํ† ๋งˆํ†  - java [์ž๋ฐ”]

https://www.acmicpc.net/problem/7576 7576๋ฒˆ: ํ† ๋งˆํ†  ์ฒซ ์ค„์—๋Š” ์ƒ์ž์˜ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋‘ ์ •์ˆ˜ M,N์ด ์ฃผ์–ด์ง„๋‹ค. M์€ ์ƒ์ž์˜ ๊ฐ€๋กœ ์นธ์˜ ์ˆ˜, N์€ ์ƒ์ž์˜ ์„ธ๋กœ ์นธ์˜ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๋‹จ, 2 ≤ M,N ≤ 1,000 ์ด๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ๋Š” ํ•˜๋‚˜์˜ ์ƒ์ž์— ์ €์žฅ๋œ ํ† ๋งˆํ†  www.acmicpc.net ์ดํ•ด ํ’€์ด์— ์•ž์„œ ๋ฌธ์ œ๋ฅผ ์ดํ•ดํ•ด๋ณด์ž ํ† ๋งˆํ† ์˜ ์ต์€ ์ƒํƒœ๊ฐ€ 1์ดˆ๋งˆ๋‹ค 1์นธ์”ฉ ์ „์ด๋˜๋Š” ์ƒํ™ฉ์ด๊ณ  ์ „์ฒด ํ† ๋งˆํ† ์— ์ „์ด๋˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์ตœ์†Œ ์‹œ๊ฐ„์„ ์ถœ๋ ฅํ•ด์•ผํ•œ๋‹ค ๊ฒฐ๊ตญ ํƒ์ƒ‰์„ ์ง„ํ–‰ํ•ด์•ผํ•˜๊ณ , ๊ฐ ์ขŒํ‘œ์— ์ตœ์†Œ ์‹œ๊ฐ„์„ ๊ธฐ๋กํ•ด์•ผํ•˜๋ฏ€๋กœ BFS๋ฅผ ์ด์šฉํ•ด์•ผํ•œ๋‹ค BFS๋ฅผ ์ง„ํ–‰ํ•˜๋ฉฐ cost๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ํƒ์ƒ‰ ์ข…๋ฃŒ ํ›„์— cost ์ค‘ ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค ํ’€์ด ์—ฌ๊ธฐ์„œ ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌ๋Š” ์ต์€ ํ† ๋งˆํ†  ์—ฌ๋ถ€๋กœ ํ•œ๋‹ค = 1..

PS/๋ฐฑ์ค€ 2022. 3. 2. 11:55
[๋ฐฑ์ค€] 2667 : ๋‹จ์ง€๋ฒˆํ˜ธ๋ถ™์ด๊ธฐ - java [์ž๋ฐ”]

https://www.acmicpc.net/problem/2667 2667๋ฒˆ: ๋‹จ์ง€๋ฒˆํ˜ธ๋ถ™์ด๊ธฐ ๊ณผ ๊ฐ™์ด ์ •์‚ฌ๊ฐํ˜• ๋ชจ์–‘์˜ ์ง€๋„๊ฐ€ ์žˆ๋‹ค. 1์€ ์ง‘์ด ์žˆ๋Š” ๊ณณ์„, 0์€ ์ง‘์ด ์—†๋Š” ๊ณณ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ์ฒ ์ˆ˜๋Š” ์ด ์ง€๋„๋ฅผ ๊ฐ€์ง€๊ณ  ์—ฐ๊ฒฐ๋œ ์ง‘์˜ ๋ชจ์ž„์ธ ๋‹จ์ง€๋ฅผ ์ •์˜ํ•˜๊ณ , ๋‹จ์ง€์— ๋ฒˆํ˜ธ๋ฅผ ๋ถ™์ด๋ ค ํ•œ๋‹ค. ์—ฌ www.acmicpc.net ์ดํ•ด ํ•ด๋‹น ๋ฌธ์ œ๋Š” 2์ฐจ์› ๋ฐฐ์—ด๋กœ ์ฃผ์–ด์ง€๋Š” map์„ ํƒ์ƒ‰ํ•˜์—ฌ ์—ฐ๊ฒฐ๋œ ์ง€์—ญ์„ ์ฐพ๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ฆ‰ map์„ ์ˆœํšŒํ•˜๋ฉฐ ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์€ ์ขŒํ‘œ๊ฐ€ ์žˆ๋‹ค๋ฉด ํ•ด๋‹น ์ขŒํ‘œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ธ์ ‘ํ•œ ์ขŒํ‘œ๋ฅผ ๋ชจ๋‘ ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌํ•œ๋‹ค. ์ด๋ ‡๊ฒŒํ•˜๋ฉด ์—ฐ๊ฒฐ๋œ ์ง€์—ญ์€ ๋ชจ๋‘ ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌ๋  ๊ฒƒ์ด๊ณ  map์„ ์ˆœํšŒ ์ค‘์— ๋ฐฉ๋ฌธ๋˜์ง€ ์•Š์€ ์ขŒํ‘œ๋ฅผ ์ฐพ๋Š”๋‹ค๋ฉด ์ƒˆ๋กœ์šด ์ง€์—ญ์˜ ๋ฐœ๊ฒฌ์„ ์˜๋ฏธํ•œ๋‹ค. ๋”ฐ๋ผ์„œ map์„ ์ˆœํšŒํ•˜๋ฉฐ ๋ฐฉ๋ฌธ๋˜์ง€ ์•Š์€ ์ขŒํ‘œ๋ฅผ ์ฐพ์„ ์‹œ ํ•ด๋‹น ์ขŒํ‘œ๋ฅผ ์‹œ์ž‘..

PS/๋ฐฑ์ค€ 2022. 2. 28. 18:32
[๋ฐฑ์ค€] 11724 : ์—ฐ๊ฒฐ ์š”์†Œ์˜ ๊ฐœ์ˆ˜ - java [์ž๋ฐ”]

https://www.acmicpc.net/problem/11724 11724๋ฒˆ: ์—ฐ๊ฒฐ ์š”์†Œ์˜ ๊ฐœ์ˆ˜ ์ฒซ์งธ ์ค„์— ์ •์ ์˜ ๊ฐœ์ˆ˜ N๊ณผ ๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜ M์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ M๊ฐœ์˜ ์ค„์— ๊ฐ„์„ ์˜ ์–‘ ๋์  u์™€ v๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ u, v ≤ N, u ≠ v) ๊ฐ™์€ ๊ฐ„์„ ์€ ํ•œ ๋ฒˆ๋งŒ ์ฃผ www.acmicpc.net ์ดํ•ด ๋ฌธ์ œ ํ’€์ด์— ์•ž์„œ ๋ฌธ์ œ๋ฅผ ์ดํ•ดํ•ด๋ณด์ž. ์—ฐ๊ฒฐ ์š”์†Œ(Connected Component)๋Š” ์—ฐ๊ฒฐ๋œ ์ •์ ์˜ ์ง‘ํ•ฉ์„ ์˜๋ฏธํ•œ๋‹ค. ๋‹ค์Œ ์ด๋ฏธ์ง€์—์„œ์˜ ์—ฐ๊ฒฐ ์š”์†Œ๋Š” 4๊ฐœ์ด๋‹ค. ๋”ฐ๋ผ์„œ ํ•ด๋‹น ๋ฌธ์ œ๋Š” ๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰์„ ํ†ตํ•ด ์—ฐ๊ฒฐ๋œ ์ •์ ์„ ๋ชจ๋‘ ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌํ•˜๊ณ  ๋ฐฉ๋ฌธ์ฒ˜๋ฆฌ ๋˜์ง€ ์•Š์€ ์ •์ ์ด ๋ฐœ๊ฒฌ๋˜๋ฉด ์ƒˆ๋กœ์šด ์—ฐ๊ฒฐ ์š”์†Œ์ž„์„ ์˜๋ฏธํ•œ๋‹ค. ํ’€์ด ์ „์ฒด ๋…ธ๋“œ(1~N)๋ฅผ ์ˆœํšŒ..

PS/๋ฐฑ์ค€ 2022. 2. 28. 17:24
[๋ฐฑ์ค€] 2252 : ์ค„ ์„ธ์šฐ๊ธฐ - java [์ž๋ฐ”]

https://www.acmicpc.net/problem/2252 2252๋ฒˆ: ์ค„ ์„ธ์šฐ๊ธฐ ์ฒซ์งธ ์ค„์— N(1 ≤ N ≤ 32,000), M(1 ≤ M ≤ 100,000)์ด ์ฃผ์–ด์ง„๋‹ค. M์€ ํ‚ค๋ฅผ ๋น„๊ตํ•œ ํšŒ์ˆ˜์ด๋‹ค. ๋‹ค์Œ M๊ฐœ์˜ ์ค„์—๋Š” ํ‚ค๋ฅผ ๋น„๊ตํ•œ ๋‘ ํ•™์ƒ์˜ ๋ฒˆํ˜ธ A, B๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด๋Š” ํ•™์ƒ A๊ฐ€ ํ•™์ƒ B์˜ ์•ž์— ์„œ์•ผ ํ•œ๋‹ค๋Š” ์˜ www.acmicpc.net ํ’€์ด "์—ฐ๊ฒฐ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง„ N๋ช…์˜ ํ•™์ƒ ์ค„ ์„ธ์šฐ๊ธฐ"๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•ด์„ํ•  ์ˆ˜ ์žˆ๋‹ค. => ์—ฐ๊ฒฐ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง„ ์ˆœํ™˜ํ•˜์ง€ ์•Š๋Š” ๋ฐฉํ–ฅ์„ฑ ๊ทธ๋ž˜ํ”„(DAG=๋ฐฉํ–ฅ์„ฑ ๋น„์ˆœํ™˜ ๊ทธ๋ž˜ํ”„)์—์„œ ๊ฐ ๋…ธ๋“œ๋ฅผ ์ค„ ์„ธ์šฐ์‹œ์˜ค. ์ด๋ฅผ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์œ„์ƒ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ผ์น˜ํ•˜๋ฏ€๋กœ ์œ„์ƒ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•ด ํ’€์ดํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ๊ฐ ๋…ธ๋“œ์˜ ์—ฐ๊ฒฐ ๋‹นํ•œ ์ •๋ณด๋ฅผ linked ๋ฐฐ์—ด์— ๋ฏธ๋ฆฌ ์ž…๋ ฅ ํ›„ ..

PS/๋ฐฑ์ค€ 2022. 2. 27. 12:06
[๋ฐฑ์ค€] 2805 : ๋‚˜๋ฌด ์ž๋ฅด๊ธฐ - java [์ž๋ฐ”]

https://www.acmicpc.net/problem/2805 2805๋ฒˆ: ๋‚˜๋ฌด ์ž๋ฅด๊ธฐ ์ฒซ์งธ ์ค„์— ๋‚˜๋ฌด์˜ ์ˆ˜ N๊ณผ ์ƒ๊ทผ์ด๊ฐ€ ์ง‘์œผ๋กœ ๊ฐ€์ ธ๊ฐ€๋ ค๊ณ  ํ•˜๋Š” ๋‚˜๋ฌด์˜ ๊ธธ์ด M์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 1,000,000, 1 ≤ M ≤ 2,000,000,000) ๋‘˜์งธ ์ค„์—๋Š” ๋‚˜๋ฌด์˜ ๋†’์ด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‚˜๋ฌด์˜ ๋†’์ด์˜ ํ•ฉ์€ ํ•ญ์ƒ M๋ณด www.acmicpc.net ์ด ๊ธ€์€ ์ด๋ถ„ํƒ์ƒ‰์„ ์ด๋ฏธ ์•Œ๊ณ ์žˆ๋Š” ์‚ฌ๋žŒ์„ ๋Œ€์ƒ์œผ๋กœ ์ž‘์„ฑํ•œ๋‹ค. ์ด๋ถ„ํƒ์ƒ‰์„ ์ด์šฉํ•ด ์ตœ์ ์˜ ๊ฐ’์„ ์ฐพ์•„๋‚ธ๋‹ค. ์ด๋ถ„ํƒ์ƒ‰ ๋ฌธ์ œ์—์„œ๋Š” ๊ตฌํ•ด์•ผํ•˜๋Š” ๊ฐ’์„ ์ฐพ๊ณ  ํ•ด๋‹น ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ํ’€์ดํ•œ๋‹ค. ๋ณดํ†ต ์ •๋‹ต์„ ์š”๊ตฌํ•˜๋Š” ๊ฐ’๊ณผ ์ผ์น˜ํ•œ๋‹ค. ํ•ด๋‹น ๋ฌธ์ œ์—์„œ๋Š” K(์ ˆ๋‹จ๊ธฐ์— ์„ค์ •ํ•  ๋†’์ด์˜ ์ตœ๋Œ“๊ฐ’)์ด ๊ธฐ์ค€ ๊ฐ’์ด๋‹ค. ๋”ฐ๋ผ์„œ ๋ณ€ํ™”ํ•˜๋Š” K๋ฅผ ๊ธฐ์ค€์œผ๋กœ totalSlicedHeight(์ž˜๋ ค์ง„ ๋‚˜๋ฌด ๊ธธ์ด์˜..

PS/๋ฐฑ์ค€ 2022. 2. 26. 20:02
์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ MySQL ์ •๋ฆฌ #2 ์œ ์šฉํ•œ ํ‚ค์›Œ๋“œ + ์‹ค์ „ ๋ฌธ์ œ ํ’€์ด

#2 ์—์„œ๋Š” ์œ ์šฉํ•œ ํ‚ค์›Œ๋“œ๋“ค์„ ์ •๋ฆฌํ•˜๋ฉด์„œ ๋ฌธ์ œ๋„ ๋ช‡ ๊ฐœ ์ •๋ฆฌํ•  ์ƒ๊ฐ์ž…๋‹ˆ๋‹ค. - ์ง‘๊ณ„ํ•จ์ˆ˜(SUM, MAX, MIN, COUNT, AVG) ์ง‘๊ณ„ํ•จ์ˆ˜๋Š” ์ตœ๋Œ“๊ฐ’ ํ˜น์€ ์ตœ์†Ÿ๊ฐ’ ๊ตฌํ•˜๊ธฐ, ๊ฐœ์ˆ˜ ์„ธ๊ธฐ ๊ทธ๋ฆฌ๊ณ  ํ‰๊ท  ๊ตฌํ•˜๊ธฐ ๋“ฑ์— ์ด์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. โ—#1์—์„œ ์ •๋ฆฌํ•œ GROUP BY๋Š” ์ง‘๊ณ„ํ•จ์ˆ˜์™€ ์‚ฌ์šฉํ•˜๋ฉด ์œ ์šฉํ•˜๋‹ˆ ๊ผญ ์•Œ์•„๋‘ก์‹œ๋‹ค. ์ด์— ๊ด€๋ จ๋œ ์˜ˆ์ œ๋Š” ๋’ค์— GROUP BY ๋ฌธ์ œ์™€ ํ•จ๊ป˜ ์•Œ์•„๋ด…๋‹ˆ๋‹ค. - ์ค‘๋ณต ์ œ๊ฑฐ ํ•˜๊ธฐ(DISTINCT) DISINCT ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ค‘๋ณต์„ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. โ—์ถ”๊ฐ€๋กœ ์ง‘๊ณ„ํ•จ์ˆ˜์™€ ์กฐํ•ฉํ•˜์—ฌ COUNT(DISTINCT NAME) ์ด๋Ÿฐ ๋ฐฉ์‹๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. NAME์˜ ์ค‘๋ณต๊ฐ’์„ ๋ฏธ๋ฆฌ ์ œ๊ฑฐํ•˜๊ณ  COUNTํ•˜๋Š” ๊ฒƒ์ด์ฃ . -- NAME SELECT ์ค‘๋ณต ์ œ๊ฑฐ SELECT DISTINCT NAME FROM M..

PS 2021. 3. 19. 22:03
์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ MySQL ์ •๋ฆฌ #1 ํ•ต์‹ฌ ํ‚ค์›Œ๋“œ

#1์—์„œ๋Š” ํ•ต์‹ฌ์ ์ธ ํ‚ค์›Œ๋“œ๋ฅผ ์ •๋ฆฌํ•˜๊ณ  #2์—์„œ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค SQL ๊ณ ๋“์  kit Level 3~4 ๋ฌธ์ œ ๋ช‡๊ฐœ๋ฅผ ๋‹ค๋ฃจ๋ฉด์„œ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜๋“ค์„ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ ํ‚ค์›Œ๋“œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๋งˆ์ง€๋ง‰์— ์ด๋“ค์„ ์ ํ•ฉํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋Š” ๋ฒ•์„ ์ •๋ฆฌํ•  ๊ฒƒ์ด๋‹ค. ORDER BY SELECT * FROM ํ…Œ์ด๋ธ”๋ช… ORDER BY ์ปฌ๋Ÿผ๋ช… (ASC) ํŠน์ • ์ปฌ๋Ÿผ์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ. ๊ธฐ๋ณธ๊ฐ’์€ ์˜ค๋ฆ„์ฐจ์ˆœ(ASC) ์ •๋ ฌ SELECT * FROM ํ…Œ์ด๋ธ”๋ช… ORDER BY ์นผ๋Ÿผ1, ์นผ๋Ÿผ2 DESC ์œ„ ๋ฐฉ์‹์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ ์นผ๋Ÿผ์— ์ ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค. GROUP BY, HAVING SELECT id, COUNT(*) FROM member GROUP BY id HAVING id > 3 ํŠน์ • ์นผ๋Ÿผ์„ ๊ธฐ์ค€์œผ๋กœ ๊ทธ๋ฃนํ™”ํ•œ๋‹ค. ์ฃผ๋กœ ์ง‘๊ณ„ํ•จ์ˆ˜(COUNT(), ..

PS 2021. 3. 18. 08:22