๋ฌธ์ ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr ๋ฌธ์ ํ์ด ๊ฐ ๋ฌธ์ ์์๋ `ANIMAL_INS`, `ANIMAL_OUT`์ ๊ฐ์ด ๋๋ฌผ์ด ๋ณดํธ์์ ๋ค์ด์จ ์ ๋ณด์ ๋ํ ํ ์ด๋ธ๊ณผ ๋ณดํธ์์์ ๋๊ฐ ๊ฒฝ์ฐ์ ๋ํ ์ ๋ณด๋ฅผ ๊ฐ์ง ํ ์ด๋ธ์ด ์ฃผ์ด์ง๋ค. ์ด๋ ๋ฌธ์ ์์๋ `JOIN`์ ํตํด ๋ ๊ฐ์ง ํ ์ด๋ธ์ ํจ๊ป ์กฐํํ์ฌ ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ์ฐพ๋ ๋ฌธ์ ๊ฐ ์ถ์ ๋๋ค. `JOIN`์ ์ดํดํ๊ณ , `ON`, `WHERE`๋ฅผ ์ ์ ํ ์ด์ฉํ๋ฉด ๋ฌธ์ ๋ฅผ ์ฝ๊ฒ ํด๊ฒฐํ ์ ์๋ค. ์ฝ๋ ์์ด์ง ๊ธฐ๋ก ์ฐพ๊ธฐ SELECT OUTS.ANIMAL_ID, OUTS.NAME FROM ANIMAL_OUTS OUT..
๋ฌธ์ 14426๋ฒ: ์ ๋์ฌ ์ฐพ๊ธฐ ๋ฌธ์์ด S์ ์ ๋์ฌ๋ S์ ๊ฐ์ฅ ์์์๋ถํฐ ๋ถ๋ถ ๋ฌธ์์ด์ ์๋ฏธํ๋ค. ์๋ฅผ ๋ค์ด, S = "codeplus"์ ์ ๋์ฌ๋ "code", "co", "codepl", "codeplus"๊ฐ ์๊ณ , "plus", "s", "cude", "crud"๋ ์ ๋์ฌ๊ฐ ์๋๋ค. ์ด N๊ฐ์ ๋ฌธ์ www.acmicpc.net ๋ฌธ์ ํ์ด M๊ฐ์ ๋ฌธ์๋ค ์ค N๊ฐ์ ๋ฌธ์์ ์ ๋ฏธ์ฌ๊ฐ ํ๋๋ผ๋ ๋๋์ง ํ์ธํ๋ ๋ฌธ์ ์ด๋ค. ์ ๋ฏธ์ฌ ์ด๋ฏ๋ก ์ฐพ๊ณ ์ ํ๋ ํจํด์ ์์ N๊ฐ์ ๋ฌธ์ ์ค ์ผ์นํ๋์ง ํ์ธํ๋ฉด ์ฝ๊ฒ ํด๊ฒฐํ ์ ์๋ค. ์ฝ๋ split์ ํ์ฉํ ํ์ด from sys import stdin if __name__ == '__main__': n, m = map(int, stdin.readline().split()..
๋ฌธ์ 14425๋ฒ: ๋ฌธ์์ด ์งํฉ ์ฒซ์งธ ์ค์ ๋ฌธ์์ด์ ๊ฐ์ N๊ณผ M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)์ด ์ฃผ์ด์ง๋ค. ๋ค์ N๊ฐ์ ์ค์๋ ์งํฉ S์ ํฌํจ๋์ด ์๋ ๋ฌธ์์ด๋ค์ด ์ฃผ์ด์ง๋ค. ๋ค์ M๊ฐ์ ์ค์๋ ๊ฒ์ฌํด์ผ ํ๋ ๋ฌธ์์ด๋ค์ด ์ฃผ์ด www.acmicpc.net ๋ฌธ์ ํ์ด N๊ฐ์ ๋ฌธ์์ด๋ก ์ด๋ฃจ์ด์ง ์งํฉ S๊ฐ ์์ ๋, M๊ฐ์ ๋ฌธ์์ด ์ค ์งํฉ S์ ํฌํจ๋๋ ๋ฌธ์๊ฐ ์ด ๋ช ๊ฐ์ธ์ง ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค. ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด์๋ `๋์ ๋๋ฆฌ`์ `in`์ ํ์ฉํ๋ฉด ์ฝ๊ฒ ํ ์ ์๋ค. M๊ฐ์ ๋ฌธ์์ด ์ค, N์ ํฌํจ๋๋์ง ํ์ธํ๊ธฐ ์ํด์๋ `if pattern in strings`์ ๊ฐ์ด ํ์ธํ๋ฉด ๋๋ค. ํ์ด์ฌ์ `in` ์ฐ์ฐ์ ๋ฆฌ์คํธ์ ๊ฒฝ์ฐ `O(N)`์ ์๊ฐ์ด ์์๋์ง๋ง ๋์ ๋๋ฆฌ์ ๊ฒฝ์ฐ `O(1)`์..
๋ฌธ์ 1305๋ฒ: ๊ด๊ณ ์ฒซ์งธ ์ค์ ๊ด๊ณ ํ์ ํฌ๊ธฐ L์ด ์ฃผ์ด์ง๊ณ , ๋์งธ ์ค์ ํ์ฌ ๊ด๊ณ ํ์ ๋ณด์ด๋ ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ค. L์ ๋ฐฑ๋ง๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. www.acmicpc.net ๋ฌธ์ ํ์ด ์ ๊ดํ์ N๊ฐ์ ๋ฌธ์์ด์ ๊ด๊ณ ๋ฅผ ํ์ํ๋ค. ์ด๋ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋ฌธ์์ด์ ํ ์นธ์ฉ ์์ผ๋ก ์ด๋ํ๋ค. ์ด๋ ์๊ฐ ๊ด๊ณ ํ์ ๋ณผ ๋, ์ฐ์ฌ ์๋ ๋ฌธ์๊ฐ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ค๋ฉด ๊ฐ๋ฅํ ๊ด๊ณ ์ ๊ธธ์ด ์ค ๊ฐ์ฅ ์งง์ ๊ฒ์ ์ถ๋ ฅํ๋ ๋ฌธ์ ์ด๋ค. ์ด๋ `KMP ์๊ณ ๋ฆฌ์ฆ`์์ ์ ๋ฏธ์ฌ์ ์ ๋์ฌ๊ฐ ๋๋ ๋ฌธ์์ด์ ์ต๋ ๊ธธ์ด๋ฅผ ์์ฑํ๋ฉด ์ฝ๊ฒ ํด๊ฒฐํ ์ ์๋ ๋ฌธ์ ์ด๋ค. ๋ง์ฝ `KMP ์๊ณ ๋ฆฌ์ฆ`์ ๋ํด ์ดํดํ๊ณ ์์ง ์๋ค๋ฉด ๋ฌธ์ ๋ฅผ ํ ์ ์๋ค. ์ฝ๋ def make_table(patten): table = [0] * l j = 0 for i ..
๋ฌธ์ ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ค ์๋ ๋ฐฉ๋ฒ n๋ช ์ ์ฌ๋์ด ์ผ๋ ฌ๋ก ์ค์ ์๊ณ ์์ต๋๋ค. n๋ช ์ ์ฌ๋๋ค์๊ฒ๋ ๊ฐ๊ฐ 1๋ฒ๋ถํฐ n๋ฒ๊น์ง ๋ฒํธ๊ฐ ๋งค๊ฒจ์ ธ ์์ต๋๋ค. n๋ช ์ด ์ฌ๋์ ์ค์ ์๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ์๋ฅผ ๋ค์ด์ 3๋ช ์ ์ฌ๋ programmers.co.kr ๋ฌธ์ ํ์ด ์ฒ์ ๋ฌธ์ ๋ฅผ ์ ํ์์ ๋๋ `DFS`๋ฅผ ํตํด ๊ฐ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํ๊ณ `K`์ธ ๊ฒฝ์ฐ๋ฅผ ๋ฐํํ๋ฉด ๋์ง ์์๊น ์๊ฐํ๋ค. ํ์ง๋ง ์ด ๋ฐฉ์์ `N`์ด 20์ด๋ฏ๋ก ์๊ฐ ์ด๊ณผ๊ฐ ๋ฐ์ํ๋ค. ๋ฐ๋ผ์ `K`์ธ ๊ฒฝ์ฐ๋ฅผ ๋ฐ๋ก ๊ตฌํ ์ ์๋ ๋ฐฉ๋ฒ์ ํตํด ํ์ด์ผ ์๊ฐ ์ด๊ณผ๊ฐ ๋ฐ์ํ์ง ์๋๋ค. ์ฆ, ์ด ๋ฌธ์ ๋ ๋จ์ํ `DFS`๋ฅผ ํตํด ์กฐํฉ์ ๊ตฌํ ์ ์๋๊ฐ?๋ฅผ ๋ฌป๋ ๋ฌธ์ ๊ฐ ์๋ ํฉํ ๋ฆฌ์ผ ์ฑ์ง์ ํตํด ํจ์จ์ ์ผ๋ก K์ธ ๊ฒฝ์ฐ์ ์กฐํฉ์ ์ฐพ์ ์ ์๋๊ฐ?๋ฅผ ๋ฌป๋ ๋ฌธ..
๋ฌธ์ ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋ฉ๋ฆฌ ๋ฐ๊ธฐ ํจ์ง์ด๋ ๋ฉ๋ฆฌ ๋ฐ๊ธฐ๋ฅผ ์ฐ์ตํ๊ณ ์์ต๋๋ค. ํจ์ง์ด๋ ํ๋ฒ์ 1์นธ, ๋๋ 2์นธ์ ๋ธ ์ ์์ต๋๋ค. ์นธ์ด ์ด 4๊ฐ ์์ ๋, ํจ์ง์ด๋ (1์นธ, 1์นธ, 1์นธ, 1์นธ) (1์นธ, 2์นธ, 1์นธ) (1์นธ, 1์นธ, 2์นธ) (2์นธ, 1์นธ, 1์นธ) (2์นธ, 2 programmers.co.kr ๋ฌธ์ ํ์ด ๋ฉ๋ฆฌ ๋ฐ๊ธฐ๋ฅผ ํ ์ ์๋ ๋ฐฉ๋ฒ์ด 1์นธ ๋๋ 2์นธ์ผ๋ก ์ ํด์ ธ ์๋ค. ์ด๋ N๊ฐ์ ์นธ์ ๋ฐ๊ณ ์ ํ๋ ๊ฒฝ์ฐ, ๊ฒฝ์ฐ์ ์๊ฐ ๋ช ๊ฐ์ธ์ง ์ฐพ๋ ๋ฌธ์ ์ด๋ค. ์ด๋ ๊ฐ ๊ฒฝ์ฐ์ ๋ฐ๋ผ ์ด๋ค ๊ท์น์ ์ด๋ฃจ๋์ง ํ์ธํ๋ฉด ์ฝ๊ฒ ํด๊ฒฐํ ์ ์๋ค. N์ด 1์ธ ๊ฒฝ์ฐ 1๊ฐ : 1์นธ N์ด 2์ธ ๊ฒฝ์ฐ 2๊ฐ : (1 + 1์นธ), 2์นธ N์ด 3์ธ ๊ฒฝ์ฐ 3๊ฐ : (1 + 1 + 1์นธ), (2 + 1์นธ), (1 + 2์นธ) ์ฆ N์ ๋ฐ..
๋ฌธ์ ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋ฐฉ๋ฌธ ๊ธธ์ด programmers.co.kr ๋ฌธ์ ํ์ด ์บ๋ฆญํฐ๊ฐ [0, 0] ์ขํ์์ ์์ํด ๋ช ๋ น์ ๋ฐ๋ผ ์, ํ, ์ข, ์ฐ๋ก ์ด๋ํ๋ค. ์ค๋ณตํ์ฌ ์ด๋ํ ๊ฑฐ๋ฆฌ์ ๋ฒ์ ๋ฐ์ผ๋ก ์ด๋ํ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ์ฌ ์ด๋ํ ๊ฑฐ๋ฆฌ์ ํฉ์ ๊ณ์ฐํ์ฌ ๋ฐํํ๋ ๋ฌธ์ ์ด๋ค. ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด์๋ ๋์ ๋๋ฆฌ๋ฅผ ํตํด `U, D, L, R`๋ก ์ด๋ํ ๊ฒฝ์ฐ ๋ณํํ๋ ์ขํ๋ฅผ ์ ์ธํ ํ, ๋ฒ์์ ๋ฐ๋ผ ๋ฐฉ๋ฌธํ์ง ์์ ๊ฒฝ์ฐ `visited`์ ์ถ๊ฐํ๋ฉด ๋๋ค. ๋ฌธ์ ์์ ๊ตฌํ๊ณ ์ ํ๋ ๋ต์ `visteid // 2`๊ฐ ๋๋ค. ์ด์ ๊ฐ์ ์ด์ ๋ ์ด๋ํ ๋๋ ์ถ๋ฐํ ๊ณณ๊ณผ ๋์ฐฉํ ๊ณณ ์๋ฐฉํฅ์ผ๋ก ๊ธฐ๋กํ์ฌ์ผ ํ๋ค. ์ฆ ํ์ฌ ์ขํ๊ฐ `[x, y]` ๋ค์ ์ขํ๊ฐ `[next_x, next_y]`๋ผ๋ฉด `[x, y, next_x, next_y],..
๋ฌธ์ ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ ๊ตญ์ฌ์ฌ n๋ช ์ด ์ ๊ตญ์ฌ์ฌ๋ฅผ ์ํด ์ค์ ์์ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค. ๊ฐ ์ ๊ตญ์ฌ์ฌ๋์ ์๋ ์ฌ์ฌ๊ด๋ง๋ค ์ฌ์ฌํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋ค๋ฆ ๋๋ค. ์ฒ์์ ๋ชจ๋ ์ฌ์ฌ๋๋ ๋น์ด์์ต๋๋ค. ํ ์ฌ์ฌ๋์์๋ ๋์์ ํ programmers.co.kr ๋ฌธ์ ํ์ด n๋ช ์ด ์ ๊ตญ์ฌ์ฌ๋ฅผ ํ๋๋ฐ ์ฌ์ฌ๋์ ๋ฐ๋ผ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋ฐํํ๋ ๋ฌธ์ ์ด๋ค. ์ด๋ ์ฌ์ฌ ๋๋ง๋ค ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๊ฐ๊ธฐ ๋ค๋ฅด๋ค. ์ด ๋ฌธ์ ๋ ๋ถ๋ฅ์ ๊ฐ์ด `์ด๋ถ ํ์`์ผ๋ก ํ์ด์ผ ์๊ฐ ๋ด์ ํต๊ณผ๊ฐ ๊ฐ๋ฅํ๋ค. ์ฆ, `๋ชจ๋ ์ ๊ตญํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ // ๊ฐ ์ฌ์ฌ๋๋ณ ์ฌ์ฌ์๊ฐ = ์ ๊ตญ์ ์`๋ฅผ ๋ง์กฑํ๋ ์ง๋ฅผ ์ฐพ์์ผ ํ๊ธฐ ๋๋ฌธ์ `์ด๋ถ ํ์`์ผ๋ก ๋ฌธ์ ๋ฅผ ํ์ด์ผ ํ๋ค. `์ด๋ถ ํ์`์์๋ `left`, `right`๋ฅผ ์ค์ ํ์ฌ์ผ ํ๋๋ฐ ์ด๋ ๊ฐ์ฅ ์งง๊ฒ ๊ฑธ๋ฆฌ๋ ์๊ฐ 1๊ณผ..