๐ค PS(Problem Solving)
[Level1/c++] ์ฒด์ก๋ณต
๋ฌธ์ ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ฒด์ก๋ณต | ํ๋ก๊ทธ๋๋จธ์ค ์ ์ฌ์๊ฐ์ ๋๋์ด ๋ค์ด, ์ผ๋ถ ํ์์ด ์ฒด์ก๋ณต์ ๋๋๋นํ์ต๋๋ค. ๋คํํ ์ฌ๋ฒ ์ฒด์ก๋ณต์ด ์๋ ํ์์ด ์ด๋ค์๊ฒ ์ฒด์ก๋ณต์ ๋น๋ ค์ฃผ๋ ค ํฉ๋๋ค. ํ์๋ค์ ๋ฒํธ๋ ์ฒด๊ฒฉ ์์ผ๋ก ๋งค๊ฒจ์ ธ ์์ด, ๋ฐ๋ก ์๋ฒํธ์ ํ์์ด๋ ๋ฐ๋ก ๋ท๋ฒํธ์ ํ์์๊ฒ๋ง ์ฒด์ก๋ณต์ ๋น๋ ค์ค ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, 4๋ฒ ํ์์ 3๋ฒ ํ์์ด๋ 5๋ฒ ํ์์๊ฒ๋ง ์ฒด์ก๋ณต์ ๋น๋ ค์ค ์ ์์ต๋๋ค. ์ฒด์ก๋ณต์ด ์์ผ๋ฉด ์์ ์ ๋ค์ ์ ์๊ธฐ ๋๋ฌธ์ ์ฒด์ก๋ณต์ ์ ์ ํ ๋น๋ ค ์ต๋ํ ๋ง์ ํ์์ด ์ฒด์ก์์ ์ ๋ค์ด์ผ ํฉ๋๋ค. ์ ์ฒด programmers.co.kr ์ฝ๋
[Level1/c++] ๋ชจ์๊ณ ์ฌ
๋ฌธ์ ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋ชจ์๊ณ ์ฌ | ํ๋ก๊ทธ๋๋จธ์ค ์ํฌ์๋ ์ํ์ ํฌ๊ธฐํ ์ฌ๋์ ์ค๋ง์ ๋๋ค. ์ํฌ์ ์ผ์ธ๋ฐฉ์ ๋ชจ์๊ณ ์ฌ์ ์ํ ๋ฌธ์ ๋ฅผ ์ ๋ถ ์ฐ์ผ๋ ค ํฉ๋๋ค. ์ํฌ์๋ 1๋ฒ ๋ฌธ์ ๋ถํฐ ๋ง์ง๋ง ๋ฌธ์ ๊น์ง ๋ค์๊ณผ ๊ฐ์ด ์ฐ์ต๋๋ค. 1๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, programmers.co.kr ์ฝ๋
[Level1/c++] ์์ฃผํ์ง ๋ชปํ ์ ์
๋ฌธ์ ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์์ฃผํ์ง ๋ชปํ ์ ์ | ํ๋ก๊ทธ๋๋จธ์ค ์๋ง์ ๋ง๋ผํค ์ ์๋ค์ด ๋ง๋ผํค์ ์ฐธ์ฌํ์์ต๋๋ค. ๋จ ํ ๋ช ์ ์ ์๋ฅผ ์ ์ธํ๊ณ ๋ ๋ชจ๋ ์ ์๊ฐ ๋ง๋ผํค์ ์์ฃผํ์์ต๋๋ค. ๋ง๋ผํค์ ์ฐธ์ฌํ ์ ์๋ค์ ์ด๋ฆ์ด ๋ด๊ธด ๋ฐฐ์ด participant์ ์์ฃผํ ์ ์๋ค์ ์ด๋ฆ์ด ๋ด๊ธด ๋ฐฐ์ด completion์ด ์ฃผ์ด์ง ๋, ์์ฃผํ์ง ๋ชปํ ์ ์์ ์ด๋ฆ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ๋ง๋ผํค ๊ฒฝ๊ธฐ์ ์ฐธ์ฌํ ์ ์์ ์๋ 1๋ช ์ด์ 100,000๋ช ์ดํ์ ๋๋ค. completion์ ๊ธธ์ด๋ partic programmers.co.kr ์ฝ๋
[๋ฐฑ์ค/c++] 2240๋ฒ - ์๋๋๋ฌด
๋ฌธ์ ๋งํฌ 2240๋ฒ: ์๋๋๋ฌด ์๋๋ ์๋๋ฅผ ์ข์ํ๋ค. ๊ทธ๋์ ์ง์ ์๋๋๋ฌด๋ฅผ ์ฌ์ด๋๊ณ , ์ฌ๊ธฐ์ ์ด๋ฆฌ๋ ์๋๋ฅผ ๋จน๊ณ ๋ ํ๋ค. ํ์ง๋ง ์๋๋ ํค๊ฐ ์์์ ์๋๋ฅผ ๋ฐ๋จน์ง๋ ๋ชปํ๊ณ , ์๋๊ฐ ๋จ์ด์ง ๋๊น์ง ๊ธฐ๋ค๋ฆฐ ๋ค์์ ๋จ์ด์ง๋ ์๋๋ฅผ ๋ฐ์์ ๋จน๊ณ ๋ ํ๋ค. ์๋๋ฅผ ์ก์ ๋์๋ ์๋๊ฐ ํ๊ณต์ ์์ ๋ ์ก์์ผ ํ๋๋ฐ, ์ด๋ ์๋๊ฐ ๋ง๋๋ง๋ํ์ฌ ๋ฐ๋ฅ์ ๋จ์ด์ง๋ฉด ๋ชป ๋จน์ ์ ๋๋ก ๋ญ๊ฐ์ง๊ธฐ ๋๋ฌธ์ด๋ค. ๋งค ์ด๋ง๋ค, ๋ ๊ฐ์ ๋๋ฌด ์ค ํ๋์ ๋๋ฌด์์ ์ด๋งค๊ฐ ๋จ์ด์ง๊ฒ ๋๋ค. ๋ง์ฝ ์ด๋งค๊ฐ ๋จ์ด์ง๋ ์๊ฐ, ์๋ www.acmicpc.net ์ฝ๋ ๋ค๋ฅธ๋ถ์ ์ฝ๋๋ฅผ ๋ณด๊ณ ํด๊ฒฐ.. ์ค๋์ ๊ตํ : ๋ฌธ์ ๋ฅผ ํ์คํ๊ฒ ์ ์ฝ์..(์ ๋ ฅ๊ฐ์ผ๋ก ๋๋ฌด์ '๋ฒํธ'๊ฐ ์ฃผ์ด์ง๋๊ฑธ ์๋์ '๊ฐฏ์'๋ก ์ฐฉ๊ฐํ๊ณ ์๋ชป ์ ๊ทผํจ)
[๋ฐฑ์ค/c++] 11049๋ฒ - ํ๋ ฌ ๊ณฑ์ ์์
๋ฌธ์ ๋ฌธ์ ํฌ๊ธฐ๊ฐ N×M์ธ ํ๋ ฌ A์ M×K์ธ B๋ฅผ ๊ณฑํ ๋ ํ์ํ ๊ณฑ์ ์ฐ์ฐ์ ์๋ ์ด N×M×K๋ฒ์ด๋ค. ํ๋ ฌ N๊ฐ๋ฅผ ๊ณฑํ๋๋ฐ ํ์ํ ๊ณฑ์ ์ฐ์ฐ์ ์๋ ํ๋ ฌ์ ๊ณฑํ๋ ์์์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๊ฒ ๋๋ค. ์๋ฅผ ๋ค์ด, A์ ํฌ๊ธฐ๊ฐ 5×3์ด๊ณ , B์ ํฌ๊ธฐ๊ฐ 3×2, C์ ํฌ๊ธฐ๊ฐ 2×6์ธ ๊ฒฝ์ฐ์ ํ๋ ฌ์ ๊ณฑ ABC๋ฅผ ๊ตฌํ๋ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด๋ณด์. AB๋ฅผ ๋จผ์ ๊ณฑํ๊ณ C๋ฅผ ๊ณฑํ๋ ๊ฒฝ์ฐ (AB)C์ ํ์ํ ๊ณฑ์ ์ฐ์ฐ์ ์๋ 5×3×2 + 5×2×6 = 30 + 60 = 90๋ฒ์ด๋ค.BC๋ฅผ ๋จผ์ ๊ณฑํ๊ณ A๋ฅผ ๊ณฑํ๋ ๊ฒฝ์ฐ A(BC)์ ํ์ํ ๊ณฑ์ ์ฐ์ฐ์ ์๋ 3×2×6 + 5×3×6 = 36 + 90 = 126๋ฒ์ด๋ค.๊ฐ์ ๊ณฑ์ ์ด์ง๋ง, ๊ณฑ์ ์ ํ๋ ์์์ ๋ฐ๋ผ์ ๊ณฑ์ ์ฐ์ฐ์ ์๊ฐ ๋ฌ๋ผ์ง๋ค.ํ๋ ฌ N๊ฐ์ ํฌ๊ธฐ๊ฐ ์ฃผ์ด์ก์ ๋, ๋ชจ๋ ํ๋ ฌ์..
[๋ฐฑ์ค/c++] 11066๋ฒ - ํ์ผ ํฉ์น๊ธฐ
๋ฌธ์ https://www.acmicpc.net/problem/11066 ๋ฌธ์ ์์ค๊ฐ์ธ ๊น๋์ ์ ์์ค์ ์ฌ๋ฌ ์ฅ(chapter)์ผ๋ก ๋๋์ด ์ฐ๋๋ฐ, ๊ฐ ์ฅ์ ๊ฐ๊ฐ ๋ค๋ฅธ ํ์ผ์ ์ ์ฅํ๊ณค ํ๋ค. ์์ค์ ๋ชจ๋ ์ฅ์ ์ฐ๊ณ ๋์๋ ๊ฐ ์ฅ์ด ์ฐ์ฌ์ง ํ์ผ์ ํฉ์ณ์ ์ต์ข ์ ์ผ๋ก ์์ค์ ์์ฑ๋ณธ์ด ๋ค์ด์๋ ํ ๊ฐ์ ํ์ผ์ ๋ง๋ ๋ค. ์ด ๊ณผ์ ์์ ๋ ๊ฐ์ ํ์ผ์ ํฉ์ณ์ ํ๋์ ์์ํ์ผ์ ๋ง๋ค๊ณ , ์ด ์์ํ์ผ์ด๋ ์๋์ ํ์ผ์ ๊ณ์ ๋ ๊ฐ์ฉ ํฉ์ณ์ ์์ค์ ์ฌ๋ฌ ์ฅ๋ค์ด ์ฐ์์ด ๋๋๋ก ํ์ผ์ ํฉ์ณ๋๊ฐ๊ณ , ์ต์ข ์ ์ผ๋ก๋ ํ๋์ ํ์ผ๋ก ํฉ์น๋ค. ๋ ๊ฐ์ ํ์ผ์ ํฉ์น ๋ ํ์ํ ๋น์ฉ(์๊ฐ ๋ฑ)์ด ๋ ํ์ผ ํฌ๊ธฐ์ ํฉ์ด๋ผ๊ณ ๊ฐ์ ํ ๋, ์ต์ข ์ ์ธ ํ ๊ฐ์ ํ์ผ์ ์์ฑํ๋๋ฐ ํ์ํ ๋น์ฉ์ ์ด ํฉ์ ๊ณ์ฐํ์์ค.์๋ฅผ ๋ค์ด, C1, C2, C3, C4๊ฐ..
[๋ฐฑ์ค/c++] 1520๋ฒ - ๋ด๋ฆฌ๋ง ๊ธธ
๋ฌธ์ ๋ฌธ์ ์ฌํ์ ๋ ๋ ์ธ์ค์ด๋ ์ง๋๋ฅผ ํ๋ ๊ตฌํ์๋ค. ์ด ์ง๋๋ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ง์ฌ๊ฐํ ๋ชจ์์ด๋ฉฐ ์ฌ๋ฌ ์นธ์ผ๋ก ๋๋์ด์ ธ ์๋ค. ํ ์นธ์ ํ ์ง์ ์ ๋ํ๋ด๋๋ฐ ๊ฐ ์นธ์๋ ๊ทธ ์ง์ ์ ๋์ด๊ฐ ์ฐ์ฌ ์์ผ๋ฉฐ, ๊ฐ ์ง์ ์ฌ์ด์ ์ด๋์ ์ง๋์์ ์ํ์ข์ฐ ์ด์ํ ๊ณณ๋ผ๋ฆฌ๋ง ๊ฐ๋ฅํ๋ค. ํ์ฌ ์ ์ผ ์ผ์ชฝ ์ ์นธ์ด ๋ํ๋ด๋ ์ง์ ์ ์๋ ์ธ์ค์ด๋ ์ ์ผ ์ค๋ฅธ์ชฝ ์๋ ์นธ์ด ๋ํ๋ด๋ ์ง์ ์ผ๋ก ๊ฐ๋ ค๊ณ ํ๋ค. ๊ทธ๋ฐ๋ฐ ๊ฐ๋ฅํ ํ์ ์ ๊ฒ ๋ค์ด๊ณ ์ถ์ด ํญ์ ๋์ด๊ฐ ๋ ๋ฎ์ ์ง์ ์ผ๋ก๋ง ์ด๋ํ์ฌ ๋ชฉํ ์ง์ ๊น์ง ๊ฐ๊ณ ์ ํ๋ค. ์์ ๊ฐ์ ์ง๋์์๋ ๋ค์๊ณผ ๊ฐ์ ์ธ ๊ฐ์ง ๊ฒฝ๋ก๊ฐ ๊ฐ๋ฅํ๋ค. ์ง๋๊ฐ ์ฃผ์ด์ง ๋ ์ด์ ๊ฐ์ด ์ ์ผ ์ผ์ชฝ ์ ์ง์ ์์ ์ถ๋ฐํ์ฌ ์ ์ผ ์ค๋ฅธ์ชฝ ์๋ ์ง์ ๊น์ง ํญ์ ๋ด๋ฆฌ๋ง๊ธธ๋ก๋ง ์ด๋ํ๋ ๊ฒฝ๋ก์ ๊ฐ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ..
[๋ฐฑ์ค/c++] 2294๋ฒ - ๋์ 2
๋ฌธ์ https://www.acmicpc.net/problem/2294 ๋ฌธ์ n๊ฐ์ง ์ข ๋ฅ์ ๋์ ์ด ์๋ค. ์ด ๋์ ๋ค์ ์ ๋นํ ์ฌ์ฉํด์, ๊ทธ ๊ฐ์น์ ํฉ์ด k์์ด ๋๋๋ก ํ๊ณ ์ถ๋ค. ๊ทธ๋ฌ๋ฉด์ ๋์ ์ ๊ฐ์๊ฐ ์ต์๊ฐ ๋๋๋ก ํ๋ ค๊ณ ํ๋ค. ๊ฐ๊ฐ์ ๋์ ์ ๋ช ๊ฐ๋ผ๋ ์ฌ์ฉํ ์ ์๋ค.์ฌ์ฉํ ๋์ ์ ๊ตฌ์ฑ์ด ๊ฐ์๋ฐ, ์์๋ง ๋ค๋ฅธ ๊ฒ์ ๊ฐ์ ๊ฒฝ์ฐ์ด๋ค. ์ ๋ ฅ์ฒซ์งธ ์ค์ n, k๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) ๋ค์ n๊ฐ์ ์ค์๋ ๊ฐ๊ฐ์ ๋์ ์ ๊ฐ์น๊ฐ ์ฃผ์ด์ง๋ค. ๋์ ์ ๊ฐ์น๋ 100,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ๊ฐ์น๊ฐ ๊ฐ์ ๋์ ์ด ์ฌ๋ฌ ๋ฒ ์ฃผ์ด์ง ์๋ ์๋ค. ์ถ๋ ฅ์ฒซ์งธ ์ค์ ์ฌ์ฉํ ๋์ ์ ์ต์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ค. ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ์๋ -1์ ์ถ๋ ฅํ๋ค. ํ์ด๊ณผ์ 1.๊ท์นdp์ด๋ฏ๋ก ์ ํ์๊ณผ ๋ฉ๋ชจ์ด์ ..
[๋ฐฑ์ค/c++] 2293๋ฒ - ๋์ 1
๋ฌธ์ https://www.acmicpc.net/problem/2293 ๋ฌธ์ n๊ฐ์ง ์ข ๋ฅ์ ๋์ ์ด ์๋ค. ๊ฐ๊ฐ์ ๋์ ์ด ๋ํ๋ด๋ ๊ฐ์น๋ ๋ค๋ฅด๋ค. ์ด ๋์ ์ ์ ๋นํ ์ฌ์ฉํด์, ๊ทธ ๊ฐ์น์ ํฉ์ด k์์ด ๋๋๋ก ํ๊ณ ์ถ๋ค. ๊ทธ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํ์์ค. ๊ฐ๊ฐ์ ๋์ ์ ๋ช ๊ฐ๋ผ๋ ์ฌ์ฉํ ์ ์๋ค.์ฌ์ฉํ ๋์ ์ ๊ตฌ์ฑ์ด ๊ฐ์๋ฐ, ์์๋ง ๋ค๋ฅธ ๊ฒ์ ๊ฐ์ ๊ฒฝ์ฐ์ด๋ค. ์ ๋ ฅ์ฒซ์งธ ์ค์ n, k๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) ๋ค์ n๊ฐ์ ์ค์๋ ๊ฐ๊ฐ์ ๋์ ์ ๊ฐ์น๊ฐ ์ฃผ์ด์ง๋ค. ๋์ ์ ๊ฐ์น๋ 100,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ์ถ๋ ฅ์ฒซ์งธ ์ค์ ๊ฒฝ์ฐ์ ์๋ฅผ ์ถ๋ ฅํ๋ค. ๊ฒฝ์ฐ์ ์๋ $2^{31}$๋ณด๋ค ์๋ค. ํ์ด๊ณผ์ 1.๊ท์นdp์ด๋ฏ๋ก ์ ํ์๊ณผ ๋ฉ๋ชจ์ด์ ์ด์ ์ ์ด์ฉํฉ๋๋ค.๊ฒฝ์ฐ์ ์๋ ์ต๋ $2^{31..
[๋ฐฑ์ค/c++] 1509๋ฒ - ํฐ๋ฆฐ๋๋กฌ ๋ถํ
๋ฌธ์ https://www.acmicpc.net/problem/1509 ๋ฌธ์ ์ธ์ค์ด๋ ์ด๋ค ๋ฌธ์์ด์ ํฐ๋ฆฐ๋๋กฌ์ผ๋ก ๋ถํ ํ๋ ค๊ณ ํ๋ค. ์๋ฅผ ๋ค์ด, ABACABA๋ฅผ ํฐ๋ฆฐ๋๋กฌ์ผ๋ก ๋ถํ ํ๋ฉด, {A, B, A, C, A, B, A}, {A, BACAB, A}, {ABA, C, ABA}, {ABACABA}๋ฑ์ด ์๋ค.๋ถํ ์ ๊ฐ์์ ์ต์๊ฐ์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ์ฒซ์งธ ์ค์ ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ค. ์ด ๋ฌธ์์ด์ ์ต๋๊ธธ์ด๋ 2,500์ด๋ค. ์ถ๋ ฅ์ฒซ์งธ ์ค์ ํฐ๋ฆฐ๋๋กฌ ๋ถํ ์ ๊ฐ์์ ์ต์๊ฐ์ ์ถ๋ ฅํ๋ค. ํ์ด๊ณผ์ 1.๊ท์นdp์ด๋ฏ๋ก ์ ํ์๊ณผ ๋ฉ๋ชจ์ด์ ์ด์ ์ ์ด์ฉํฉ๋๋ค.๋ฌธ์์ด์ ๋ถํ ํ ์ ์๋ ์ต์๊ฐ์ ์ถ๋ ฅํฉ๋๋ค. 2.์์ ํฐ๋ฆฐ๋๋กฌ?(https://it-and-life.tistory.com/137)์์ ์ฝ๊ฐ ๋ณํ๋ ๋ฌธ์ ๋ก, ๋ฌธ์์ด..