๐ป Algorithm/Python
-
[Python] ํ๋ก๊ทธ๋๋จธ์ค ๊ฑฐ๋ฆฌ๋๊ธฐ ํ์ธํ๊ธฐ (๊ตฌํ)๐ป Algorithm/Python 2022. 7. 8. 23:46
๐ ๋ฌธ์ ๊ฐ๋ฐ์๋ฅผ ํฌ๋งํ๋ ์ฃ ๋ฅด๋๊ฐ ์นด์นด์ค์ ๋ฉด์ ์ ๋ณด๋ฌ ์์ต๋๋ค. ์ฝ๋ก๋ ๋ฐ์ด๋ฌ์ค ๊ฐ์ผ ์๋ฐฉ์ ์ํด ์์์๋ค์ ๊ฑฐ๋ฆฌ๋ฅผ ๋ฌ์ ๋๊ธฐ๋ฅผ ํด์ผํ๋๋ฐ ๊ฐ๋ฐ ์ง๊ตฐ ๋ฉด์ ์ธ ๋งํผ ์๋์ ๊ฐ์ ๊ท์น์ผ๋ก ๋๊ธฐ์ค์ ๊ฑฐ๋ฆฌ๋ฅผ ๋๊ณ ์๋๋ก ์๋ดํ๊ณ ์์ต๋๋ค. ๋๊ธฐ์ค์ 5๊ฐ์ด๋ฉฐ, ๊ฐ ๋๊ธฐ์ค์ 5x5 ํฌ๊ธฐ์ ๋๋ค. ๊ฑฐ๋ฆฌ๋๊ธฐ๋ฅผ ์ํ์ฌ ์์์๋ค ๋ผ๋ฆฌ๋ ๋งจํดํผ ๊ฑฐ๋ฆฌ1๊ฐ 2 ์ดํ๋ก ์์ง ๋ง์ ์ฃผ์ธ์. ๋จ ์์์๊ฐ ์์์๋ ์๋ฆฌ ์ฌ์ด๊ฐ ํํฐ์ ์ผ๋ก ๋งํ ์์ ๊ฒฝ์ฐ์๋ ํ์ฉํฉ๋๋ค. ์๋ฅผ ๋ค์ด, 5๊ฐ์ ๋๊ธฐ์ค์ ๋ณธ ์ฃ ๋ฅด๋๋ ๊ฐ ๋๊ธฐ์ค์์ ์์์๋ค์ด ๊ฑฐ๋ฆฌ๋๊ธฐ๋ฅผ ์ ๊ธฐํค๊ณ ์๋์ง ์๊ณ ์ถ์ด์ก์ต๋๋ค. ์๋ฆฌ์ ์์์๋ ์์์๋ค์ ์ ๋ณด์ ๋๊ธฐ์ค ๊ตฌ์กฐ๋ฅผ ๋๊ธฐ์ค๋ณ๋ก ๋ด์ 2์ฐจ์ ๋ฌธ์์ด ๋ฐฐ์ด places๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. ๊ฐ ๋๊ธฐ์ค๋ณ๋ก ๊ฑฐ๋ฆฌ๋๊ธฐ๋ฅผ ์งํค๊ณ ..
-
[Python] ๋ฐฑ์ค 11265 ๋๋์ง ์๋ ํํฐ (Floyd-Warshall)๐ป Algorithm/Python 2022. 7. 8. 23:43
๐ ๋ฌธ์ ํํฐ๋ฅผ ์ข์ํ๋ ๋ฏผํธ๋ ๋์์ด ํํฐ๊ฐ ์ด๋ฆฌ๋ ๋์ด๋์ฐ "๋ฏผํธ์๋"๋ฅผ ์ธ์ ๋ค. ์ฒ์์๋ ํ๊ฐ์ ํํฐ์ฅ๋ง์ ๊ฐ์ง๊ณ ์๋ ์์ ๋์ด๋์ฐ์ด์์ง๋ง, ์ฌ๋๋ค์ ์ ์ ๋ง์ด ์ฐพ์์ ํํฐ์ฅ์ ์ฆ์ถํ๊ณ ํ์ฌ๋ N๊ฐ์ ํํฐ์ฅ์ ๊ฐ์ง ํฐ ๋์ด๋์ฐ์ด ๋์๋ค. ๋ฏผํธ๋ ํํฐ์ฅ์ ์ฆ์ถํ ๋๋ง๋ค ํธ์๋ฅผ ์ํด ์๋ก์ด ํํฐ์ฅ๊ณผ ๊ธฐ์กด์ ๋ชจ๋ ํํฐ์ฅ์ด ์ง์ ์ ์ผ๋ก ์ฐ๊ฒฐ์ด ๋ ์ ์๋ ๋๋ก๋ค์ ๋ง๋ค์๋ค. ์ด๋ ๋ง๋ค์ด์ง ๋๋ก๋ค์ ์ฌ์ฉ์๋ค์ ํธ์๋ฅผ ์ํด ์ผ๋ฐฉํตํ์ผ๋ก ์ค๊ณ๊ฐ ๋์๋ค. ํํฐ์ฅ์ด ์ ์๋๋ ๊ด์ฐฎ์์ง๋ง ํํฐ์ฅ์ด ๋ง์์ง ์ง๊ธ ๋ค์๊ณผ ๊ฐ์ ๋ ๊ฐ์ง ๋ฌธ์ ์ ์ด ๋ฐ์ํ๋ค. A ํํฐ์ฅ์์ B ํํฐ์ฅ์ผ๋ก ๋นจ๋ฆฌ ๊ฐ ์ ์๋๋ก ์ง์ ์ฐ๊ฒฐ์ด ๋ ์ผ๋ฐฉํตํ ๋๋ก๋ฅผ ๋ง๋ค์์ง๋ง A์ B๊ฐ ์๋ ๋ค๋ฅธ ํํฐ์ฅ์ ๊ฒฝ์ ํด์ ๋ ๋นจ๋ฆฌ ๊ฐ ์ ์๋ ๊ฒฝ์ฐ๊ฐ ์์ ์ ์๋ค..
-
[Python] ๋ฐฑ์ค 18352 ํน์ ๊ฑฐ๋ฆฌ์ ๋์ ์ฐพ๊ธฐ (Dijkstra)๐ป Algorithm/Python 2022. 7. 8. 23:40
๐ ๋ฌธ์ ์ด๋ค ๋๋ผ์๋ 1๋ฒ๋ถํฐ N๋ฒ๊น์ง์ ๋์์ M๊ฐ์ ๋จ๋ฐฉํฅ ๋๋ก๊ฐ ์กด์ฌํ๋ค. ๋ชจ๋ ๋๋ก์ ๊ฑฐ๋ฆฌ๋ 1์ด๋ค. ์ด ๋ ํน์ ํ ๋์ X๋ก๋ถํฐ ์ถ๋ฐํ์ฌ ๋๋ฌํ ์ ์๋ ๋ชจ๋ ๋์ ์ค์์, ์ต๋จ ๊ฑฐ๋ฆฌ๊ฐ ์ ํํ K์ธ ๋ชจ๋ ๋์๋ค์ ๋ฒํธ๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋ํ ์ถ๋ฐ ๋์ X์์ ์ถ๋ฐ ๋์ X๋ก ๊ฐ๋ ์ต๋จ ๊ฑฐ๋ฆฌ๋ ํญ์ 0์ด๋ผ๊ณ ๊ฐ์ ํ๋ค. ์๋ฅผ ๋ค์ด N=4, K=2, X=1์ผ ๋ ๋ค์๊ณผ ๊ฐ์ด ๊ทธ๋ํ๊ฐ ๊ตฌ์ฑ๋์ด ์๋ค๊ณ ๊ฐ์ ํ์. ์ด ๋ 1๋ฒ ๋์์์ ์ถ๋ฐํ์ฌ ๋๋ฌํ ์ ์๋ ๋์ ์ค์์, ์ต๋จ ๊ฑฐ๋ฆฌ๊ฐ 2์ธ ๋์๋ 4๋ฒ ๋์ ๋ฟ์ด๋ค. 2๋ฒ๊ณผ 3๋ฒ ๋์์ ๊ฒฝ์ฐ, ์ต๋จ ๊ฑฐ๋ฆฌ๊ฐ 1์ด๊ธฐ ๋๋ฌธ์ ์ถ๋ ฅํ์ง ์๋๋ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ๋์์ ๊ฐ์ N, ๋๋ก์ ๊ฐ์ M, ๊ฑฐ๋ฆฌ ์ ๋ณด K, ์ถ๋ฐ ๋์์ ๋ฒํธ X๊ฐ ์ฃผ์ด์ง๋ค...
-
[Python] ๋ฐฑ์ค 11000 ๊ฐ์์ค ๋ฐฐ์ (Heapq)๐ป Algorithm/Python 2022. 7. 8. 23:39
๐ ๋ฌธ์ ์๊ฐ์ ์ฒญ์ ๋ง์คํฐ ๊น์ข ํ ์ ์๋์๊ฒ ์๋ก์ด ๊ณผ์ ๊ฐ ์ฃผ์ด์ก๋ค. ๊น์ข ํ ์ ์๋ํํ ๋ Si์ ์์ํด์ Ti์ ๋๋๋ N๊ฐ์ ์์ ์ด ์ฃผ์ด์ง๋๋ฐ, ์ต์์ ๊ฐ์์ค์ ์ฌ์ฉํด์ ๋ชจ๋ ์์ ์ ๊ฐ๋ฅํ๊ฒ ํด์ผ ํ๋ค. ์ฐธ๊ณ ๋ก, ์์ ์ด ๋๋ ์งํ์ ๋ค์ ์์ ์ ์์ํ ์ ์๋ค. (์ฆ, Ti ≤ Sj ์ผ ๊ฒฝ์ฐ i ์์ ๊ณผ j ์์ ์ ๊ฐ์ด ๋ค์ ์ ์๋ค.) ์๊ฐ์ ์ฒญ ๋์ถฉํ ๊ฒ ์ฐ๋ฆฌ๋ฉด, ์ ์๋์ ๋์๋๋ฆฌ์! ์ ๋ ฅ ์ฒซ ๋ฒ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 200,000) ์ดํ N๊ฐ์ ์ค์ Si, Ti๊ฐ ์ฃผ์ด์ง๋ค. (0 ≤ Si < Ti ≤ 109) ์ถ๋ ฅ ๊ฐ์์ค์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ผ. ์์ ์ ๋ ฅ 1 3 1 3 2 4 3 5 ์์ ์ถ๋ ฅ 1 2 ๐ ํ์ด ๐ฌ Code import sys, heapq input = sys.stdin...
-
[Python] ๋ฐฑ์ค 3107 IPv6 (String)๐ป Algorithm/Python 2022. 7. 8. 23:37
๐ ๋ฌธ์ IPv6์ ๊ธธ์ด๊ฐ 128๋นํธ์ธ ์ฐจ์ธ๋ ์ธํฐ๋ท ํ๋กํ ์ฝ์ด๋ค. IPv6์ ์ฃผ์๋ 32์๋ฆฌ์ 16์ง์๋ฅผ 4์๋ฆฌ์ฉ ๋์ด ๋ํ๋ธ๋ค. ์ด๋, ๊ฐ ๊ทธ๋ฃน์ ์ฝ๋ก (:)์ผ๋ก ๊ตฌ๋ถํด์ ๋ํ๋ธ๋ค. ์๋ฅผ ๋ค๋ฉด, ๋ค์๊ณผ ๊ฐ๋ค. 2001:0db8:85a3:0000:0000:8a2e:0370:7334 32์๋ฆฌ์ 16์ง์๋ ์ฌ๋์ด ์ฝ๊ณ ์ฐ๊ธฐ์ ๋ถํธํ๊ณ , ๋๋ถ๋ถ์ ์๋ฆฌ๊ฐ 0์ด๊ธฐ ๋๋ฌธ์ ์๋์ ๊ฐ์ด ์ถ์ฝํ ์ ์๋ค. ๊ฐ ๊ทธ๋ฃน์ ์์๋ฆฌ์ 0์ ์ ์ฒด ๋๋ ์ผ๋ถ๋ฅผ ์๋ต ํ ์ ์๋ค. ์์ IPv6์ ์ถ์ฝํ๋ฉด, ๋ค์๊ณผ ๊ฐ๋ค. 2001:db8:85a3:0:00:8a2e:370:7334 ๋ง์ฝ 0์ผ๋ก๋ง ์ด๋ฃจ์ด์ ธ ์๋ ๊ทธ๋ฃน์ด ์์ ๊ฒฝ์ฐ ๊ทธ ์ค ํ ๊ฐ ์ด์ ์ฐ์๋ ๊ทธ๋ฃน์ ํ๋ ๊ณจ๋ผ ์ฝ๋ก 2๊ฐ(::)๋ก ๋ฐ๊ฟ ์ ์๋ค. 2001:db8:85a3:..
-
[Python] ๋ฐฑ์ค 13022 ๋๋์ ์ฌ๋ฐ๋ฅธ ๋จ์ด (String)๐ป Algorithm/Python 2022. 7. 8. 23:34
๐ ๋ฌธ์ ๋ค์์ ๋๋ ๋๋ผ์์ ์ฌ์ฉํ๋ ์ฌ๋ฐ๋ฅธ ๋จ์ด์ ๋ํ ์ค๋ช ์ด๋ค. ์์์ ์์ ์ ์ n์ ๋ํด์, 'w'๊ฐ n๋ฒ ๋์ค๊ณ , ๊ทธ ๋ค์์ 'o'๊ฐ n๋ฒ, ๊ทธ ๋ค์์ 'l'์ด n๋ฒ, ๊ทธ ๋ค์์ 'f'๊ฐ n๋ฒ ๋์จ ๋จ์ด๋ ์ฌ๋ฐ๋ฅธ ๋จ์ด์ด๋ค. ์ฌ๋ฐ๋ฅธ ๋จ์ด ๋ ๊ฐ๋ฅผ ์ด์ ๋จ์ด๋ ์ฌ๋ฐ๋ฅธ ๋จ์ด์ด๋ค. 1๋ฒ๊ณผ 2๋ฒ ์กฐ๊ฑด์ผ๋ก ๋ง๋ค ์ ์๋ ๋จ์ด๋ง ์ฌ๋ฐ๋ฅธ ๋จ์ด์ด๋ค. ๋ค์์ ์ฌ๋ฐ๋ฅธ ๋จ์ด์ ์์์ด๋ค. 1๋ฒ ๊ท์น์ผ๋ก ๋ง๋ "wolf", "wwoollff", "wwwooolllfff"๋ ๋ชจ๋ ์ฌ๋ฐ๋ฅธ ๋จ์ด์ด๋ค. 2๋ฒ ๊ท์น์ผ๋ก ๋ง๋ "wolfwwoollff"์ ์ฌ๋ฐ๋ฅธ ๋จ์ด์ด๋ค. 2๋ฒ ๊ท์น์ ๋ ๋ฒ ์จ์ ๋ง๋ "wolfwwoollffwolf"์ ์ฌ๋ฐ๋ฅธ ๋จ์ด์ด๋ค. "wfol"์ ์ฌ๋ฐ๋ฅธ ๋จ์ด๊ฐ ์๋๋ค. (์์๊ฐ ์ฌ๋ฐ๋ฅด์ง ์์) "wwolfo..
-
[Python] ๋ฐฑ์ค 7576 ํ ๋งํ (BFS)๐ป Algorithm/Python 2022. 7. 8. 23:32
๐ ๋ฌธ์ ์ฒ ์์ ํ ๋งํ ๋์ฅ์์๋ ํ ๋งํ ๋ฅผ ๋ณด๊ดํ๋ ํฐ ์ฐฝ๊ณ ๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ํ ๋งํ ๋ ์๋์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๊ฒฉ์ ๋ชจ์ ์์์ ์นธ์ ํ๋์ฉ ๋ฃ์ด์ ์ฐฝ๊ณ ์ ๋ณด๊ดํ๋ค. ์ฐฝ๊ณ ์ ๋ณด๊ด๋๋ ํ ๋งํ ๋ค ์ค์๋ ์ ์ต์ ๊ฒ๋ ์์ง๋ง, ์์ง ์ต์ง ์์ ํ ๋งํ ๋ค๋ ์์ ์ ์๋ค. ๋ณด๊ด ํ ํ๋ฃจ๊ฐ ์ง๋๋ฉด, ์ต์ ํ ๋งํ ๋ค์ ์ธ์ ํ ๊ณณ์ ์๋ ์ต์ง ์์ ํ ๋งํ ๋ค์ ์ต์ ํ ๋งํ ์ ์ํฅ์ ๋ฐ์ ์ต๊ฒ ๋๋ค. ํ๋์ ํ ๋งํ ์ ์ธ์ ํ ๊ณณ์ ์ผ์ชฝ, ์ค๋ฅธ์ชฝ, ์, ๋ค ๋ค ๋ฐฉํฅ์ ์๋ ํ ๋งํ ๋ฅผ ์๋ฏธํ๋ค. ๋๊ฐ์ ๋ฐฉํฅ์ ์๋ ํ ๋งํ ๋ค์๊ฒ๋ ์ํฅ์ ์ฃผ์ง ๋ชปํ๋ฉฐ, ํ ๋งํ ๊ฐ ํผ์ ์ ์ ๋ก ์ต๋ ๊ฒฝ์ฐ๋ ์๋ค๊ณ ๊ฐ์ ํ๋ค. ์ฒ ์๋ ์ฐฝ๊ณ ์ ๋ณด๊ด๋ ํ ๋งํ ๋ค์ด ๋ฉฐ์น ์ด ์ง๋๋ฉด ๋ค ์ต๊ฒ ๋๋์ง, ๊ทธ ์ต์ ์ผ์๋ฅผ ์๊ณ ์ถ์ด ํ๋ค. ํ ๋งํ ๋ฅผ ์ฐฝ๊ณ ์ ๋ณด๊ดํ๋ ๊ฒฉ์๋ชจ์์ ์..
-
[Python] ๋ฐฑ์ค 16719 ZOAC (๊ตฌํ)๐ป Algorithm/Python 2022. 7. 8. 23:30
๐ ๋ฌธ์ 2018๋ 12์, ์ฒ์ ์์ํ๊ฒ ๋ ZOAC์ ์คํ๋์ ๋งก์ ์ฑ์ฐ๋ ๋๊ตฌ๋ณด๋ค ํ๋ คํ๊ฒ ZOAC๋ฅผ ์๋ฆฌ๋ ค ํ๋ค. ์ ๊ธ์๋ถํฐ ํ๋์ฉ ๋ณด์ฌ์ฃผ๋ ๋ฐฉ์์ ๋๋ฌด ์์ํ๋ค๊ณ ์๊ฐํ ์ฑ์ฐ๋ ๋ฌธ์์ด์ ๋ณด์ฌ์ฃผ๋ ์๋ก์ด ๊ท์น์ ๊ณ ์ํด๋๋ค! ๊ท์น์ ์ด๋ฌํ๋ค. ์์ง ๋ณด์ฌ์ฃผ์ง ์์ ๋ฌธ์ ์ค ์ถ๊ฐํ์ ๋์ ๋ฌธ์์ด์ด ์ฌ์ ์์ผ๋ก ๊ฐ์ฅ ์์ ์ค๋๋ก ํ๋ ๋ฌธ์๋ฅผ ๋ณด์ฌ์ฃผ๋ ๊ฒ์ด๋ค. ์๋ฅผ ๋ค์ด ZOAC๋ฅผ ๋ณด์ฌ์ฃผ๊ณ ์ถ๋ค๋ฉด, A → AC → OAC → ZOAC ์์ผ๋ก ๋ณด์ฌ์ฃผ๋ฉด ๋๋ค. ๋ฐ์ ์ฑ์ฐ๋ฅผ ์ํ์ฌ ์ด ๊ท์น๋๋ก ์ถ๋ ฅํด์ฃผ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ ๋ฒ์งธ ์ค์ ์ํ๋ฒณ ๋๋ฌธ์๋ก ๊ตฌ์ฑ๋ ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ค. ๋ฌธ์์ด์ ๊ธธ์ด๋ ์ต๋ 100์์ด๋ค. ์ถ๋ ฅ ๊ท์น์ ๋ง๊ฒ ์์๋๋ก ๋ฌธ์์ด์ ์ถ๋ ฅํ๋ค. ์์ ์ ๋ ฅ 1 ZOAC ์์ ์ถ๋ ฅ 1 A..