Algo Rhythm๐บ๐/BOJ
-
[Algo Rhythm๐บ๐] BOJ 17425 - ์ฝ์์ ํฉAlgo Rhythm๐บ๐/BOJ 2021. 6. 24. 21:43
๋ฌธ์ ๋ถ์ ์ฝ์์ ์ฑ์ง ์ค ํ๋๋ ๋ ์์ฐ์ a,b์ ๋ํ์ฌ a๊ฐ b์ ๋ฐฐ์์ด๋ฉด b๋ a์ ์ฝ์(๋ค) ์ค ํ๋๋ผ๋ ๊ฒ์ด๋ค. ๊ทธ๋ฆฌ๊ณ ์ด ๋ฌธ์ ๋ ์์ฐ์ n(1โคnโค106)์ ์ ๋ ฅํ ๋ g(n)์ ์ถ๋ ฅํ ๊ฒ์ ์๊ตฌํ๋ค. ์ด๋ g(n)์ ์๋์ ๊ฐ์ ์์์ผ๋ก ์ ์ํ ์ ์๋ค. g(n)={g(nโ1)+f(n)n>11n=1 ์์ ๋งํ ๋ ๊ฐ์ง๋ฅผ ์ข ํฉํ ๋ ์ด ๋ฌธ์ ๋ ์ฝ์์ ์ฑ์ง์ ์ด์ฉํ์ฌ ๋ชจ๋ n์ ๋ํ์ฌ g(n)์ ๊ตฌํ์ฌ ์ ์ฅํ ๋ค์ ํ ์คํธ์ผ์ด์ค๋ก n์ ์ํ๋ ์์ฐ์ a๊ฐ ๋ค์ด์ฌ ๋๋ง๋ค g(a)๋ฅผ ์ถ๋ ฅํ๋ ๋ฌธ์ ๋ก ์ดํดํ ์ ์๋ค. ๋ฌธ์ ํ์ด 1. g(n)์ ์ ์ฅํ..
-
[Algo Rhythm๐บ๐] BOJ 17427 - ์ฝ์์ ํฉ 2Algo Rhythm๐บ๐/BOJ 2021. 6. 24. 01:42
๋ฌธ์ ๋ถ์ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ ์์ฐ์๋ฅผ n(1โคnโค106) ๊ทธ๋ฆฌ๊ณ n๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์๋ฅผ i๋ผ๊ณ ํ์. ์์ฐ์ a๊ฐ ์์ฐ์ b๋ก ๋๋์ด ๋จ์ด์ง๋ค๋ฉด ์ฆ, a๊ฐ b์ ๋ฐฐ์๋ผ๋ฉด b๋ a์ ์ฝ์์ด๋ค. ๋ฐ๋ผ์, ์ด ๋ฌธ์ ๋ i์ ์ํ๋ ํ ์์ฐ์์ ๋ฐฐ์์ ๊ฐ์์ ๊ทธ ์์ฐ์๋ฅผ ๊ณฑํ ๊ฐ๋ค์ ๋ํ์ฌ g(n)=โni=1f(i)์ ๊ตฌํ๋ ๋ฌธ์ ๋ก ์ดํดํ ์ ์๋ค. ๋ฌธ์ ํ์ด i๋ฅผ 1๋ถํฐ n๊น์ง ๋ฐ๋ณตํ์ฌ i์ ๋ฐฐ์์ ๊ฐ์์ i๋ฅผ ๊ณฑํ ๊ฐ๋ค์ ๋ํ๋ค. ์ด๋ i์ ๋ฐฐ์๋ n/i๊ฐ์ด๋ค. ๊ทธ๋ฆฌ๊ณ i>n/2์ผ ๋ n๋ณด๋ค ์์ ์์ฐ์๋ค ์ค i์ ๋ฐฐ์๋ i ์๊ธฐ ์์ ๋ฟ์ด๋ค. ๋ฐ๋ผ์ ๊ทธ ๊ฒฝ์ฐ์๋ i๋ง ๋ํ๋ค. ๋ณต์ก๋ ๋ถ์..
-
[Algo Rhythm๐บ๐] BOJ 4375 - 1Algo Rhythm๐บ๐/BOJ 2021. 6. 23. 21:55
๋ฌธ์ ๋ถ์ 1๋ก๋ง ์ด๋ฃจ์ด์ง ํ ์ ์๋ฅผ x, 2์ 5๋ก ๋๋์ด ๋จ์ด์ง์ง ์๋ ์ ์๋ฅผ n(1โคnโค105)์ด๋ผ๊ณ ํ์. ์ด ์ ์์ ์ค๋ฅธ์ชฝ ๋์ 1์ ๋ถ์ด๊ธฐ ์ํด์๋ ์ ์์ ์๋ฆฟ์๋ฅผ ํ ์๋ฆฌ ์ฌ๋ฆฐ ํ 1์ ๋ํ๋ฉด ๋๋ค. ์ฆ, 10รx+1์ ํ๋ฉด ๋๋ค. ํ์ง๋ง overflow๊ฐ ๋ฐ์ํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ณ์ํด์ ์ค๋ฅธ์ชฝ ๋์ 1์ ๋ถ์ผ ์ ์๋ค. ๋คํํ๋ ๋ฌธ์ ์์ ์๊ตฌํ๋ ๊ฒ์ x ์์ฒด๊ฐ ์๋๋ผ x \mod n == 0์ ๋ง์กฑํ ๋์ ์๋ฆฟ์์ด๋ค. ๋ฐ๋ผ์, ์ค์ํ ๊ฒ์ x๊ฐ ์๋๋ผ x \mod n์ด๋ผ๋ ๊ฒ์ ์ ์ ์๋ค. ๊ทธ๋์ ์ ์์ ์ค๋ฅธ์ชฝ ๋์ 1์ ๋ถ์ผ ๋ x = 10 \times x + 1์ด ์๋ $x = (10 \times x + 1) \mod n..
-
[Algo Rhythm๐บ๐]BOJ 6588 - ๊ณจ๋๋ฐํ์ ์ถ์ธกAlgo Rhythm๐บ๐/BOJ 2021. 6. 23. 17:45
๋ฌธ์ ๋ถ์ ์ด ๋ฌธ์ ๋ 4๋ณด๋ค ํฐ ์ด๋ค ์ง์ x (6 \le x \le 10^6)๊ฐ ๋ ํ์์ธ ์์ a, b (a \le b)์ ํฉ์ผ๋ก ๋ํ๋ผ ์ ์๋์ง ํ๋ณํ๋ ๋ฌธ์ ์ด๋ค. ์ด๋ ์ฃผ์ํ ์ ์ ๊ณจ๋๋ฐํ์ ์ถ์ธก์ 10^{18} ์ดํ์์ ์ฐธ์์ด ํ์ธ๋์๊ธฐ ๋๋ฌธ์ ๋ ํ์ ์์์ ํฉ์ผ๋ก ๋ํ๋ด์ง ๋ชป ํ๋ ๊ฒฝ์ฐ๋ ์๊ฐํ์ง ์์๋ ๋๋ค๋ ๊ฒ์ด๋ค. ๋ฌธ์ ํ์ด 1. '์์ ํ๋ณ ์๊ณ ๋ฆฌ์ฆ' ์์ฉ ์ฃผ์ด์ง x์ ๋ํ์ฌ a์ ๊ฐ๋ฅํ ์ต์๊ฐ์ธ 3๋ถํฐ x - a์ธ b๊ฐ 2๋ณด๋ค ํฌ์ง ์์ ๋๊น์ง a, b ๋ชจ๋ ์์์ธ์ง ํ๋ณํ๋ค. ๋ง์ฝ ๋ชจ๋ ์์๋ผ๋ฉด x = a + b๋ฅผ ์ถ๋ ฅํ ๋ค ๋ฐ๋ณต๋ฌธ์ ํ์ถํ๊ณ ๊ทธ๋ ์ง ์๋ค๋ฉด a๋ฅผ 2์ฉ ์ฆ๊ฐํ๊ณ ์ ๊ณผ์ ์ ๋ฐ๋ณตํ๋ค. ์ด๋ 2์ฉ ์ฆ๊ฐํ๋ ์ด์ ๋ ์ง์๋ ์ ๋ ์์๊ฐ ..
-
[Algo Rhythm๐บ๐]BOJ 2309 - ์ผ๊ณฑ ๋์์ดAlgo Rhythm๐บ๐/BOJ 2021. 6. 22. 20:02
๋ฌธ์ ๋ถ์ ๋ฌธ์ ์์ ์ฃผ์ด์ง๋ ์ํ ๋์์ด๋ค์ ํค์ ํฉ์ ์ผ๊ณฑ ๋์์ด๋ค์ ํค์ ํฉ์ธ 100๋ณด๋ค ํฌ๋ค. ๋ฐ๋ผ์ ์ด ๋ฌธ์ ๋ i๋ฒ์งธ ๋์์ด์ j๋ฒ์งธ ๋์์ด (1 \le i, j \le n)์ ํฉ์ด ์ด๊ณผ๊ฐ๊ณผ ์ผ์นํ๋ (i, j)์์ ์ฐพ๋ ๋ฌธ์ ๋ก ์ดํดํ ์ ์๋ค. ๋ฌธ์ ํ์ด ์ํ ๋์์ด์ ํค๋ฅผ ๋ฐฐ์ด์ ์ ์ฅํ ๋ค, ์ด๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค. ์๋ํ๋ฉด ์ผ๊ณฑ ๋์์ด์ ํค๋ฅผ ์ถ๋ ฅํ ๋ ์ค๋ฆ์ฐจ์์ผ๋ก ์ถ๋ ฅํด์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ค์์ผ๋ก ์ด์ค ๋ฐ๋ณต๋ฌธ์ ํตํด (i, j)์์ ์ฐพ๋๋ค. ๋ง์ฝ ์ฐพ์๋ค๋ฉด i๋ฒ์งธ ๋์์ด์ j๋ฒ์งธ ๋์์ด๋ฅผ ์ ์ธํ ๋ชจ๋ ๋์์ด๋ค์ ํค๋ฅผ ์ฐจ๋ก๋๋ก ์ถ๋ ฅํ ๋ค ํ๋ก๊ทธ๋จ์ ์ข ๋ฃํ๋ค. ๋ณต์ก๋ ๋ถ์ ๋์์ด n๋ช ์ ํค๊ฐ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง ๋, ์๊ฐ ๋ณต์ก๋์ ๊ณต๊ฐ ๋ณต์ก๋๋ ๋ค์๊ณผ ๊ฐ๋ค. ์๊ฐ ๋ณต..
-
[Algo Rhythm๐บ๐]BOJ 14888 - ์ฐ์ฐ์ ๋ผ์๋ฃ๊ธฐAlgo Rhythm๐บ๐/BOJ 2021. 6. 22. 16:24
๋ฌธ์ ๋ถ์ N (2 \le N \le 11)๊ฐ์ ์๋ก ์ด๋ฃจ์ด์ง ์์ด A_1, A_2, A_3, ..., A_n์ ์์๋ ๋ฐ๊ฟ ์ ์์ง๋ง ์ซ์ ์ฌ์ด ๋ค์ด๊ฐ๋ ์ฐ์ฐ์๋ค์ ์์๋ ๋ฐ๊ฟ ์ ์๋ค. ๋ฐ๋ผ์ ์ด ๋ฌธ์ ๋ ์ฐ์ฐ์๋ค์ ์์์ ๋ํ '๋ชจ๋ ์กฐํฉ์ ๊ตฌํ ๋ค' ๊ณ์ฐํ ๊ฒฐ๊ณผ๋ค ์ค ์ต๋๊ฐ๊ณผ ์ต์๊ฐ์ ๊ตฌํ๋ ๋ฌธ์ ๋ก ์ดํดํ ์ ์๋ค. ๋ฌธ์ ํ์ด 1. ์ต์ ํ ๐ โโ๏ธ ์ฐ์ฐ์๋ค์ ์์์ ๋ํ ๋ชจ๋ ์กฐํฉ์ ๊ตฌํ๊ธฐ ์ํด backtracking์ ์ฌ์ฉํ๋ค. ์ด๋ ๋ฐฉ๋ฌธํด์ผ ํ๋ vertex๋ค์ ์ฐ์ฐ์๋ค์ธ๋ฐ ์ฐ์ฐ์๋ค์ ์ข ๋ฅ๋ฅผ ๊ตฌ๋ถํ๊ธฐ ์ํด enum์ ์ ์ํ๋ค. ๋ํ ์ฐ์ฐ์๋ค์ ๊ฐ์๋ ์ ๋ ฅ์ ๋ฐ๋ผ ๊ฐ๋ณ์ ์ด๊ธฐ ๋๋ฌธ์ ์ ์ํ enum์ ์ ์ฅํ๋ vector๋ฅผ ์ ์ํ๋ค. backtracking์ ์ฌ์ฉํ ์ ํ์์ ์๋์ ๊ฐ๋ค. ์ด..
-
[Algo Rhythm๐บ๐]BOJ 20170 - Commemorative DiceAlgo Rhythm๐บ๐/BOJ 2021. 6. 21. 03:26
๋ฌธ์ ๋ถ์ ์ฃผ์ฌ์ ๊ฒ์์ ํ๋ ์ฒซ๋ฒ์งธ, ๋๋ฒ์งธ ํ๋ ์ด์ด๋ฅผ ๊ฐ๊ฐ A, B๋ผ๊ณ ํ๊ณ A์ B์ ์ฃผ์ฌ์ ์ค ์์์ ํ ๋ฉด์ ์ ํ ์ซ์๋ฅผ ๊ฐ๊ฐ \alpha, \beta๋ผ๊ณ ํ์. ์ด๋ ์ฃผ์ฌ์๋ 6๋ฉด์ด๊ธฐ ๋๋ฌธ์ A์ B๊ฐ ์ฃผ์ฌ์๋ฅผ ๋์ ธ์ ๋์ฌ ์ ์๋ ๊ฒฝ์ฐ์ ์๋ 6 \times 6 = 36์ด๋ค. ๊ทธ๋ฆฌ๊ณ A๊ฐ B๋ฅผ ์ด๊ธฐ๋ ๊ฒฝ์ฐ์ ์์ธ N_{win}์ \alpha \gt \beta๋ฅผ ๋ง์กฑํ๋ ๋ชจ๋ \alpha์ ์์ ๊ฐ๋ค. ๋ฐ๋ผ์, A๊ฐ B๋ฅผ ์ด๊ธธ ํ๋ฅ ์ N_{win} \over 36์ด๋ค. ์ด๋, ๋ฌธ์ ์์ ์๊ตฌํ๋ ๊ฒ์ '๋์ด์ ๋๋ ์ ์๋' ๋ถ์ ํํ๋ก ์ถ๋ ฅํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ๋ถ์์ ๋ถ๋ชจ๋ฅผ ์ต๋ ๊ณต์ฝ์๋ก ๋๋ ์ ์ถ๋ ฅํด์ผ ํ๋ค. ๋ฌธ์ ํ์ด A์ B์ ์ฃผ์ฌ์ ์ ๋ณด๋ฅผ ๊ฐ๊ฐ ๋ฐฐ์ด์ ์ ์ฅํ ๋ค, $..
-
[Algo Rhythm๐บ๐]BOJ 14889 - ์คํํธ์ ๋งํฌAlgo Rhythm๐บ๐/BOJ 2021. 6. 18. 23:44
๋ฌธ์ ๋ถ์ ์คํํธํ์ T_{start}, ๋งํฌํ์ T_{link} ๊ทธ๋ฆฌ๊ณ ๋ ํ์ ๋ฅ๋ ฅ์น๋ฅผ ๊ฐ๊ฐ S_{start}, S_{link}๋ผ๊ณ ํ์. ์ด๋ ๊ฐ ํ์ ์ํ๋ ์ฌ๋๋ค์ ์๋ ๋ ํ ๋ชจ๋ ์ถ๊ตฌ๋ฅผ ํ๋ N\ (4 \le N \le 20)๋ช ์ ์ ๋ฐ์ธ N / 2 ๋ช ์ด๋ค. ๋ฌธ์ ์์ ์๊ตฌํ๋ min(|S_{start} - S_{link}|)๋ฅผ ๊ตฌํ๊ธฐ ์ํ ๊ฐ์ฅ ์ง๊ด์ ์ธ ๋ฐฉ๋ฒ์ (T_{start}, T_{link})์ ๋ชจ๋ ์กฐํฉ์ ๊ตฌํ ๋ค ๊ฐ ์กฐํฉ์ |S_{start} - S_{link}|์ ๊ตฌํ๊ณ ๊ทธ ์ค ์ต์๊ฐ์ ์ฐพ๋ ๊ฒ์ด๋ค. ๋ชจ๋ ์กฐํฉ์ ๊ตฌํด์ผ ํ๋ ๋ฌธ์ ๋ค์ ์ฃผ๋ก 'backtracking'์ ์ฌ์ฉํ๋ค. ์ด ๋ฌธ์ ๋ ๋ง์ฐฌ๊ฐ์ง๋ก backtracking์ ์ฌ์ฉํ์ฌ ํด๊ฒฐํ๋ค. ๋ฌธ์ ํ์ด ..