Algo Rhythm๐บ๐/Programmers
-
[Algo Rhythm๐บ๐] ํ๋ก๊ทธ๋๋จธ์ค - ๊ธฐ์ง๊ตญ ์ค์นAlgo Rhythm๐บ๐/Programmers 2022. 9. 24. 16:51
๐ซ๋ฌธ์ ๋ถ์ ์ํํธ์ ๊ฐ์๋ฅผ $n\ (1 \le n \le 2 \times 10^8)$, ํ์ฌ ๊ธฐ์ง๊ตญ์ด ์ค์น๋ ์ํํธ์ ๋ฒํธ๊ฐ ๋ด๊ธด 1์ฐจ์ ๋ฐฐ์ด์ $S\ (1 \lt \left\vert S \right\vert \lt 10^4,\ S๋\ ์ค๋ฆ์ฐจ์\ ์ ๋ ฌ)$, $S$์ ์ํ๋ ๊ฐ ๊ธฐ์ง๊ตญ์ $s_i\ (1 \le s_i \le n,\ 1 \le i \le \left\vert S \right\vert )$, ์ ํ์ ๋๋ฌ ๊ฑฐ๋ฆฌ๋ฅผ $w(1 \le w \le 10^4)$, ํ ๊ธฐ์ง๊ตญ์ด ์ ํ๋ฅผ ์ ๋ฌํ ์ ์๋ ๊ธฐ์ง๊ตญ๋ค์ ์ต๊ฐ ๊ฐ์๋ฅผ $d\ (=2 \times w + 1)$๋ผ๊ณ ํ์. ํ์ฌ ์ค์น๋ ๊ธฐ์ง๊ตญ $s_i$์ ์ ํ ์ ๋ฌ ๋ฒ์๋ฅผ $rcvd_i$๋ผ๊ณ ํ ๋, $rcvd_i$๋ ๋ค์๊ณผ ๊ฐ๋ค. $\begin{matri..
-
[Algo Rhythm๐บ๐] ํ๋ก๊ทธ๋๋จธ์ค - ์ซ์ ๊ฒ์Algo Rhythm๐บ๐/Programmers 2022. 9. 24. 00:59
๐ซ๋ฌธ์ ๋ถ์ A ํ์๋ค์ด ๋ถ์ฌ๋ฐ์ ์๊ฐ ์ถ์ ์์๋๋ก ๋์ด๋์ด์๋ ๋ฐฐ์ด์ $A$, i๋ฒ์งธ ์์๊ฐ Bํ์ i๋ฒ ํ์์ด ๋ถ์ฌ๋ฐ์ ์๋ฅผ ์๋ฏธํ๋ ๋ฐฐ์ด์ $B$๋ผ๊ณ ํ์. ์ด๋ ๋ ๋ฐฐ์ด์ ์์ $a_i, b_i$, ๋ฐฐ์ด์ ํฌ๊ธฐ $L$์ ์๋์ ๊ฐ์ด ์ ์ํ ์ ์๋ค. $1 \le L = \left\vert A \right\vert = \left\vert B \right\vert \le 10^5$ $1 \le a_i, b_i \le 10^9 (a_i \in A, b_i \in B, i \in \left[ 1, L \right])$ Aํ์ ์ถ์ ์์๊ฐ ์ด๋ฏธ ๊ณ ์ ๋์ด ์๋ค. ๋ฐ๋ผ์ Bํ์ด ์ต๋ ์น์ ์ ์ป๊ธฐ ์ํด์๋ ๊ฐ $a_i$๋ฅผ ํจ๋ฐฐํ ์ ์๋ ์ฆ, $a_i < b_i$ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๊ฐ์ฅ ์์ $b_i$์ ๋งค์นญํ..
-
[Algo Rhythm๐บ๐] ํ๋ก๊ทธ๋๋จธ์ค ๊ณ ๋์ kit ๋๋์งAlgo Rhythm๐บ๐/Programmers 2020. 8. 8. 22:49
๐ ๋ฌธ์ ์ค๋ช ๋๋์ด ์ด๋ ๋ง์์ ํธ ๊ณํ์ ํ๊ณ ์์ต๋๋ค. ์ด ๋ง์์ ๋ชจ๋ ์ง๋ค์ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋๊ทธ๋๊ฒ ๋ฐฐ์น๋์ด ์์ต๋๋ค. ๊ฐ ์ง๋ค์ ์๋ก ์ธ์ ํ ์ง๋ค๊ณผ ๋ฐฉ๋ฒ์ฅ์น๊ฐ ์ฐ๊ฒฐ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ธ์ ํ ๋ ์ง์ ํธ๋ฉด ๊ฒฝ๋ณด๊ฐ ์ธ๋ฆฝ๋๋ค. ๊ฐ ์ง์ ์๋ ๋์ด ๋ด๊ธด ๋ฐฐ์ด money๊ฐ ์ฃผ์ด์ง ๋, ๋๋์ด ํ์น ์ ์๋ ๋์ ์ต๋๊ฐ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํ์ธ์. ์ ํ์ฌํญ ์ด ๋ง์์ ์๋ ์ง์ 3๊ฐ ์ด์ 1,000,000๊ฐ ์ดํ์ ๋๋ค. money ๋ฐฐ์ด์ ๊ฐ ์์๋ 0 ์ด์ 1,000 ์ดํ์ธ ์ ์์ ๋๋ค. ๐ฏ ์ด๋ป๊ฒ ํ์๋ Backtracking์ ์ด์ฉํ ์ฒซ๋ฒ์งธ ์๋ (0/ 100) => ์ ํ์ฑ์ ๋ชจ๋ ์๊ฐ ์ด๊ณผ, ํจ์จ์ฑ์ ๋ชจ๋ ํต๊ณผ ๐ โ๏ธ๐ โ๏ธ๐ class Solution { private..
-
[Algo Rhythm๐บ๐] ํ๋ก๊ทธ๋๋จธ์ค ๊ณ ๋์ kit ๋ฑ๊ตฃ๊ธธAlgo Rhythm๐บ๐/Programmers 2020. 8. 6. 15:21
๐ ๋ฌธ์ ์ค๋ช ๊ณ์๋๋ ํญ์ฐ๋ก ์ผ๋ถ ์ง์ญ์ด ๋ฌผ์ ์ ๊ฒผ์ต๋๋ค. ๋ฌผ์ ์ ๊ธฐ์ง ์์ ์ง์ญ์ ํตํด ํ๊ต๋ฅผ ๊ฐ๋ ค๊ณ ํฉ๋๋ค. ์ง์์ ํ๊ต๊น์ง ๊ฐ๋ ๊ธธ์ m x n ํฌ๊ธฐ์ ๊ฒฉ์๋ชจ์์ผ๋ก ๋ํ๋ผ ์ ์์ต๋๋ค. ์๋ ๊ทธ๋ฆผ์ m = 4, n = 3 ์ธ ๊ฒฝ์ฐ์ ๋๋ค. ๊ฐ์ฅ ์ผ์ชฝ ์, ์ฆ ์ง์ด ์๋ ๊ณณ์ ์ขํ๋ (1, 1)๋ก ๋ํ๋ด๊ณ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ์๋, ์ฆ ํ๊ต๊ฐ ์๋ ๊ณณ์ ์ขํ๋ (m, n)์ผ๋ก ๋ํ๋ ๋๋ค. ๊ฒฉ์์ ํฌ๊ธฐ m, n๊ณผ ๋ฌผ์ด ์ ๊ธด ์ง์ญ์ ์ขํ๋ฅผ ๋ด์ 2์ฐจ์ ๋ฐฐ์ด puddles์ด ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. ์ง์์ ํ๊ต๊น์ง ๊ฐ ์ ์๋ ์ต๋จ๊ฒฝ๋ก์ ๊ฐ์๋ฅผ 1,000,000,007๋ก ๋๋ ๋๋จธ์ง๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ๊ฒฉ์์ ํฌ๊ธฐ m, n์ 1 ์ด์ 100 ์ดํ์ธ ์์ฐ์์ ๋๋ค. m๊ณผ..
-
[Algo Rhythm๐บ๐] ํ๋ก๊ทธ๋๋จธ์ค ๊ณ ๋์ kit ์ ์ ์ผ๊ฐํAlgo Rhythm๐บ๐/Programmers 2020. 8. 4. 15:40
๐ ๋ฌธ์ ์ค๋ช ์์ ๊ฐ์ ์ผ๊ฐํ์ ๊ผญ๋๊ธฐ์์ ๋ฐ๋ฅ๊น์ง ์ด์ด์ง๋ ๊ฒฝ๋ก ์ค, ๊ฑฐ์ณ๊ฐ ์ซ์์ ํฉ์ด ๊ฐ์ฅ ํฐ ๊ฒฝ์ฐ๋ฅผ ์ฐพ์๋ณด๋ ค๊ณ ํฉ๋๋ค. ์๋ ์นธ์ผ๋ก ์ด๋ํ ๋๋ ๋๊ฐ์ ๋ฐฉํฅ์ผ๋ก ํ ์นธ ์ค๋ฅธ์ชฝ ๋๋ ์ผ์ชฝ์ผ๋ก๋ง ์ด๋ ๊ฐ๋ฅํฉ๋๋ค. ์๋ฅผ ๋ค์ด 3์์๋ ๊ทธ ์๋์นธ์ 8 ๋๋ 1๋ก๋ง ์ด๋์ด ๊ฐ๋ฅํฉ๋๋ค. ์ผ๊ฐํ์ ์ ๋ณด๊ฐ ๋ด๊ธด ๋ฐฐ์ด triangle์ด ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ๊ฑฐ์ณ๊ฐ ์ซ์์ ์ต๋๊ฐ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํ์ธ์. ์ ํ์ฌํญ ์ผ๊ฐํ์ ๋์ด๋ 1 ์ด์ 500 ์ดํ์ ๋๋ค. ์ผ๊ฐํ์ ์ด๋ฃจ๊ณ ์๋ ์ซ์๋ 0 ์ด์ 9,999 ์ดํ์ ์ ์์ ๋๋ค. ๐ฏ ์ด๋ป๊ฒ ํ์๋ 1. DFS (50/ 100) - ํจ์จ์ฑ ํต๊ณผ ๐ โ๏ธ๐ โ๏ธ๐ class Solution { public int solution(int[]..
-
[Algo Rhythm๐บ๐] ํ๋ก๊ทธ๋๋จธ์ค ๊ณ ๋์ kit ์์ฐAlgo Rhythm๐บ๐/Programmers 2020. 7. 30. 15:38
๐ ๋ฌธ์ ์ค๋ช ๊ตญ๊ฐ์ ์ญํ ์ค ํ๋๋ ์ฌ๋ฌ ์ง๋ฐฉ์ ์์ฐ์์ฒญ์ ์ฌ์ฌํ์ฌ ๊ตญ๊ฐ์ ์์ฐ์ ๋ถ๋ฐฐํ๋ ๊ฒ์ ๋๋ค. ๊ตญ๊ฐ์์ฐ์ ์ด์ก์ ๋ฏธ๋ฆฌ ์ ํด์ ธ ์์ด์ ๋ชจ๋ ์์ฐ์์ฒญ์ ๋ฐฐ์ ํด ์ฃผ๊ธฐ๋ ์ด๋ ค์ธ ์๋ ์์ต๋๋ค. ๊ทธ๋์ ์ ํด์ง ์ด์ก ์ดํ์์ ๊ฐ๋ฅํ ํ ์ต๋์ ์ด ์์ฐ์ ๋ค์๊ณผ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ๋ฐฐ์ ํฉ๋๋ค. 1. ๋ชจ๋ ์์ฒญ์ด ๋ฐฐ์ ๋ ์ ์๋ ๊ฒฝ์ฐ์๋ ์์ฒญํ ๊ธ์ก์ ๊ทธ๋๋ก ๋ฐฐ์ ํฉ๋๋ค. 2. ๋ชจ๋ ์์ฒญ์ด ๋ฐฐ์ ๋ ์ ์๋ ๊ฒฝ์ฐ์๋ ํน์ ํ ์ ์ ์ํ์ก์ ๊ณ์ฐํ์ฌ ๊ทธ ์ด์์ธ ์์ฐ์์ฒญ์๋ ๋ชจ๋ ์ํ์ก์ ๋ฐฐ์ ํฉ๋๋ค. ์ํ์ก ์ดํ์ ์์ฐ์์ฒญ์ ๋ํด์๋ ์์ฒญํ ๊ธ์ก์ ๊ทธ๋๋ก ๋ฐฐ์ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ ์ฒด ๊ตญ๊ฐ์์ฐ์ด 485์ด๊ณ 4๊ฐ ์ง๋ฐฉ์ ์์ฐ์์ฒญ์ด ๊ฐ๊ฐ 120, 110, 140, 150์ผ ๋, ์ํ์ก์ 127๋ก ์ก์ผ๋ฉด ์์ ์์ฒญ๋ค์ ๋ํด์ ๊ฐ..
-
[Algo Rhythm๐บ๐] ํ๋ก๊ทธ๋๋จธ์ค ๊ณ ๋์ kit ์์Algo Rhythm๐บ๐/Programmers 2020. 7. 29. 14:47
๐ ๋ฌธ์ ์ค๋ช n๋ช ์ ๊ถํฌ์ ์๊ฐ ๊ถํฌ ๋ํ์ ์ฐธ์ฌํ๊ณ ๊ฐ๊ฐ 1๋ฒ๋ถํฐ n๋ฒ๊น์ง ๋ฒํธ๋ฅผ ๋ฐ์์ต๋๋ค. ๊ถํฌ ๊ฒฝ๊ธฐ๋ 1๋1 ๋ฐฉ์์ผ๋ก ์งํ์ด ๋๊ณ , ๋ง์ฝ A ์ ์๊ฐ B ์ ์๋ณด๋ค ์ค๋ ฅ์ด ์ข๋ค๋ฉด A ์ ์๋ B ์ ์๋ฅผ ํญ์ ์ด๊น๋๋ค. ์ฌํ์ ์ฃผ์ด์ง ๊ฒฝ๊ธฐ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ง๊ณ ์ ์๋ค์ ์์๋ฅผ ๋งค๊ธฐ๋ ค ํฉ๋๋ค. ํ์ง๋ง ๋ช๋ช ๊ฒฝ๊ธฐ ๊ฒฐ๊ณผ๋ฅผ ๋ถ์คํ์ฌ ์ ํํ๊ฒ ์์๋ฅผ ๋งค๊ธธ ์ ์์ต๋๋ค. ์ ์์ ์ n, ๊ฒฝ๊ธฐ ๊ฒฐ๊ณผ๋ฅผ ๋ด์ 2์ฐจ์ ๋ฐฐ์ด results๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋ ์ ํํ๊ฒ ์์๋ฅผ ๋งค๊ธธ ์ ์๋ ์ ์์ ์๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ์ ์์ ์๋ 1๋ช ์ด์ 100๋ช ์ดํ์ ๋๋ค. ๊ฒฝ๊ธฐ ๊ฒฐ๊ณผ๋ 1๊ฐ ์ด์ 4,500๊ฐ ์ดํ์ ๋๋ค. results ๋ฐฐ์ด ๊ฐ ํ [A, B]๋ A ์ ์๊ฐ B ์ ์๋ฅผ ์ด๊ฒผ๋ค๋..
-
[Algo Rhythm๐บ๐] ํ๋ก๊ทธ๋๋จธ์ค ๊ณ ๋์ kit ๊ฐ์ฅ ๋จผ ๋ ธ๋Algo Rhythm๐บ๐/Programmers 2020. 7. 28. 12:35
๐ ๋ฌธ์ ์ค๋ช n๊ฐ์ ๋ ธ๋๊ฐ ์๋ ๊ทธ๋ํ๊ฐ ์์ต๋๋ค. ๊ฐ ๋ ธ๋๋ 1๋ถํฐ n๊น์ง ๋ฒํธ๊ฐ ์ ํ์์ต๋๋ค. 1๋ฒ ๋ ธ๋์์ ๊ฐ์ฅ ๋ฉ๋ฆฌ ๋จ์ด์ง ๋ ธ๋์ ๊ฐฏ์๋ฅผ ๊ตฌํ๋ ค๊ณ ํฉ๋๋ค. ๊ฐ์ฅ ๋ฉ๋ฆฌ ๋จ์ด์ง ๋ ธ๋๋ ์ต๋จ๊ฒฝ๋ก๋ก ์ด๋ํ์ ๋ ๊ฐ์ ์ ๊ฐ์๊ฐ ๊ฐ์ฅ ๋ง์ ๋ ธ๋๋ค์ ์๋ฏธํฉ๋๋ค. ๋ ธ๋์ ๊ฐ์ n, ๊ฐ์ ์ ๋ํ ์ ๋ณด๊ฐ ๋ด๊ธด 2์ฐจ์ ๋ฐฐ์ด vertex๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, 1๋ฒ ๋ ธ๋๋ก๋ถํฐ ๊ฐ์ฅ ๋ฉ๋ฆฌ ๋จ์ด์ง ๋ ธ๋๊ฐ ๋ช ๊ฐ์ธ์ง๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ๋ ธ๋์ ๊ฐ์ n์ 2 ์ด์ 20,000 ์ดํ์ ๋๋ค. ๊ฐ์ ์ ์๋ฐฉํฅ์ด๋ฉฐ ์ด 1๊ฐ ์ด์ 50,000๊ฐ ์ดํ์ ๊ฐ์ ์ด ์์ต๋๋ค. vertex ๋ฐฐ์ด ๊ฐ ํ [a, b]๋ a๋ฒ ๋ ธ๋์ b๋ฒ ๋ ธ๋ ์ฌ์ด์ ๊ฐ์ ์ด ์๋ค๋ ์๋ฏธ์ ๋๋ค. ๐ฏ ์ด๋ป๊ฒ ํ์๋ i..