ํ๋ก๊ทธ๋๋จธ์ค
28
[ํ๋ก๊ทธ๋๋จธ์ค] ์ ์
์ ์ถ ์ค์ผ์ค๋ง java ๋ฌธ์ ํ์ด
1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋งํฌ์ฒ๋ฆฌํด์ผํ ์์
์ ์: n์ฝ์ด์ ๊ฐ์์ ์ฝ์ด๋ง๋ค ์ผ์ ์ฒ๋ฆฌํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ : int [] cores๋งจ ๋ง์ง๋ง์ ์ผ์ ๋๋ด๋ ์ฝ์ด์ ๋ฒํธ๋ฅผ ๊ตฌํ๋ผ. (๋ฒํธ๋ 1๋ถํฐ ์์ํ๋ค.)2. ์ ๊ทผ ๋ฐฉ์KEY WORD: binary_search์ด๋ถํ์์ผ๋ก n์ ์์
๋ ์ด์์ ์ฒ๋ฆฌ๋ฅผ ํ๋ ์๊ฐ๋ ์ค ๊ฐ์ฅ ์์ ์๊ฐ๋(k)๋ฅผ ๊ตฌํ๋ค.(n = 15๋ผ๊ณ ํ์. ์๊ฐ๋ณ๋ก ์งค๋์ ๋, 16์ด ๊ฐ์ฅ ๊ฐ๊น์ด ์ ์ด๋ค.)์ฝ์ด์ ๋งจ ๋ง์ง๋ง ์๋ฆฌ๋ถํฐ k ์๊ฐ๋ ์ผ์ ํ๋ ๋
์์ ํ๋ํ๋ ์ ์ธ์์ผ๊ฐ๋ฉด์ ๋งจ ๋ง์ง๋ง์ผ๋ก n๋ฒ์งธ ์ผ์ ์ฒ๋ฆฌํ ์ฝ์ด๋ฅผ ๊ตฌํ๊ณ ๋ฒํธ๋ฅผ ์ถ๋ ฅํ๋ค.9์๊ฐ์งธ์์๋ 1๋ฒ ์ฝ์ด์ 2๋ฒ์ฝ์ด๋ง ์ผํ๋ฉฐ 16๋ฒ์งธ์ธ 2๋ฒ ์ฝ์ด๋ฅผ ์ ์ธํ๋ฉด 1๋ฒ์ฝ์ด๊ฐ target๊ฐ์ธ 15๋ฅผ ์ฒ๋ฆฌํ๋ ๋ง์ง๋ง ์ฝ์ด์ด๋ค. ๊ทธ๋์ ๋ต์..
2024.10.03
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
[ํ๋ก๊ทธ๋๋จธ์ค] n*2 ๋ฐฐ์ด ์๋ฅด๊ธฐ ๋ฌธ์ ํ์ด java
1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋งํฌ2์ฐจ์ ๋ฐฐ์ด์ ๊ฐ์ ์ง์ด๋ฃ๊ณ , ๊ทธ๊ฒ์ 1์ฐจ์ ๋ฐฐ์ด๋ก ๋์ด๋จ๋ ค์, ๋ฌธ์ ์์ ์ํ๋ ๊ตฌ๊ฐ ๋ด์ ์ซ์๋ค์ ๋ฌถ์ด์ ๋ฐํํ๋ ๋ฌธ์ ์ด๋ค.2. ์ ๊ทผ ๋ฐฉ์KEY WORD: Brute Force, 1์ฐจ์ ๋ฐฐ์ด๊ณผ 2์ฐจ์ ๋ฐฐ์ด์ ์์น ๊ด๊ณํด๋น ๋ฌธ์ ๋ n์ maximum์ด 10^7์ด๋ฏ๋ก, O(n)์ ์ด๊ณผํ๋ ์๊ฐ ๋ณต์ก๋๋ฅผ ์ฌ์ฉํ์ง ๋ชปํ๋ค. ๋ฐ๋ผ์ 2์ฐจ์ ๋ฐฐ์ด์ ๊ฐ์ ๋ค ์ง์ด๋ฃ๊ณ , ๊ทธ๊ฒ์ 1์ฐจ์์ผ๋ก ๋ง๋๋, ๋ง์น ๋ฌธ์ ์์ ์ง์ํ๋๋ก๋ ํ์ด๋ฅผ ํ์ง ๋ชปํ๋ค. ๋ํ 1์ฐจ์ ๋ฐฐ์ด์ ๋ฐ๋ก ๋ง๋ค๋๋ผ๋, n*n์ ๋ฐฐ์ด์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ด๊ณผํ๋ ๊ฐ์ ์ด๋ํ ์ ์๊ธฐ ๋๋ฌธ์ 1์ฐจ์ ๋ฐฐ์ด ์ ์ฒด๋ฅผ ๋ง๋๋ ๊ฒ๋ ๋ฌด๋ฆฌ๋ค.๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ ์ ํํ left ~ right ๊น์ง์ ๋ฐฐ์ด์ ๋ง๋ค์ด ๊ฐ์ ๊ตฌํด ๋ฐํํด์ผ ํ๋ค.(1) 1์ฐจ์ ๋ฐฐ์ด 2..
2024.09.05
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
[ํ๋ก๊ทธ๋๋จธ์ค] ํ๋ ฌ ํ
๋๋ฆฌ ํ์ ํ๊ธฐ ๋ฌธ์ ํ์ด java
1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋งํฌ(1) ํ์ ์ํฌ ๋ถ๋ถ ํ๋ ฌ์ ์ข์๋จ, ์ฐํ๋จ์ List๊ฐ ์ฃผ์ด์ง๋ค.(2) List์ ๊ฐ๋ง๋ค ํ๋ ฌ์ ์๊ณ ๋ฐฉํฅ์ผ๋ก ํ์ ์ํจ๋ค.(3) ํ์ ํ ๋, ์์ง์๋ ๊ฐ ์ค ๊ฐ์ฅ ์์ ๊ฐ๋ค์ ๋ชจ์์ ๋ฐํํ๋ค.2. ์ ๊ทผ ๋ฐฉ์KEY WORD: BRUTE FORCE, ๋ฐฐ์ด ํ์ ๋ฐฐ์ด ํ์ ์ ๋ธ๋ฃจํธ ํฌ์ค ๋ฌธ์ ๋ฅผ ํ ๋ ๋จ๊ณจ๋ก ๋์จ๋ค. ์ฝ๋ฉ ํ
์คํธ์์๋ ๋ฐฐ์ด ํ์ ์ด๋ผ๋ ํค์๋๊ฐ ๋จ๋
์ผ๋ก ๋ฌธ์ ์ ๋์ค์ง ์์ง๋ง, ๋ฌธ์ ์ ์กฐ์ฐ์ผ๋ก๋ ์์ฃผ ๋ฑ์ฅํ๋ ๊ฒ ๊ฐ๋ค. ๊ทธ๋์ ํ์ ํ๋ ๋ฒ์ ๋ํด ์์๋๋ ๊ฒ์ ์ค์ํ๋ค.๋ฌธ์ ์์, ํ์ ํ๋ ๋ชจ์ต์ ์น์ ํ๊ฒ ์์๋ก ์๋ ค์ค๋ค.14 -> 8์ ์๋ฆฌ๋ก, 8์ด 9์ ์๋ฆฌ๋ก ์๊ณ ๋ฐฉํฅ์ผ๋ก ์์ง์ด๊ณ ์์์ ๋ณผ ์ ์๋ค.๊ทธ๋ ๋ค๋ฉด ๊ตฌํ์ ํ ๋๋ ์ด๋ป๊ฒ ํด์ผํ ๊น? ๊ตฌํํ ๋๋ ๋ฐ ์๊ณ ๋ฐฉํฅ..
2024.09.05
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
99ํด๋ฝ ์ฝํ
์คํฐ๋ 26์ผ์ฐจ TIL + [ํ๋ก๊ทธ๋๋จธ์ค] ๊ฐ์ธ์ ๋ณด ์์ง ์ ํจ๊ธฐ๊ฐ ํ์ด
1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋งํฌ(1) ์ค๋์ด ๋ช๋
, ๋ช์, ๋ฉฐ์น ์ธ์ง ์๋ ค์ฃผ๊ณ , ๊ฐ์ธ์ ๋ณด์ ์ ํ๋ณ๋ก ์ ๋ณด ๋ณด๊ด ๊ธฐ๊ฐ์ ์๋ ค์ค๋ค. (2) String ๋ฐฐ์ด ํํ๋ก, ์ ๋ณด๊ฐ ์์ง๋ ๋ ์ง, ๊ฐ์ธ์ ๋ณด์ ์ ํ์ด ์ฃผ์ด์ง ๋, ์ฃผ์ด์ง ๋ฐฐ์ด์์ ์ค๋ ํ๊ธฐ๋ ์ ๋ณด๊ฐ ๋ฌด์์ธ์ง, ๋ฒํธ๋ฅผ ๋ฐฐ์ด ํํ๋ก ๋ฐํํ๋ผ. 2. ์ ๊ทผ ๋ฐฉ์KEY WORD: ๋ฌธ์์ด ์๋ฅด๊ธฐํด๋น ๋ฌธ์ ์ ์
๋ ฅ์ ๋ค์๊ณผ ๊ฐ์ด ์ฃผ์ด์ง๋ค. todaytermsprivaciesresult"2022.05.19"["A 6", "B 12", "C 3"]["2021.05.02 A", "2021.07.01 B", "2022.02.19 C", "2022.02.20 C"][1, 3]"2020.01.01"["Z 3", "D 5"]["2019.01.01 D", "2019.11.15 Z", "2..
2024.08.16
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
99ํด๋ฝ ์ฝํ
์คํฐ๋ 25์ผ์ฐจ TIL + [ํ๋ก๊ทธ๋๋จธ์ค] ์์ ๋ ๊ฐ์ง ํ์ด โจ
1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋งํฌ 2. ์ ๊ทผ ๋ฐฉ์KEY WORD: BFS์๊ฐ ํด์ผํ ์ : ํ๋์ ์ ์ ์ด ์์ ์ ์์น๋ฅผ ์๋ค๋ ๊ฒ์ ๋จ๋ฐฉํฅ ๊ทธ๋ํ์์ ํด๋น ์ ์ง์ด ๋ค๋ฅธ ๋ชจ๋ ์ ์ ๋ค๊ณผ ์์ด๋ฅผ ๊ฐ์ง๋ค๋ ๊ฒ์ด๋ค. ์ด ๋, ํด๋น ์์ด์ ๊ฐ์ ์ ์ผ๋ก ํ์
์ด ๋๋ ๋๋ค.๊ฐ์ ์ ์ผ๋ก ํ์
๋๋ค๋ ๊ฒ์ ๋ฌด์จ ๋ป์ธ๊ฐ?ํด๋น ๊ทธ๋ฆผ์, ๋ฌธ์ ์์ ์์๋ก ์ฃผ์ด์ง, ์ ์ ๋ค๊ฐ์ ๊ด๊ณ์ด๋ค. ๋ฌธ์ ์์๋ 2๋ฒ์ด 1,4,3๋ฒ์๊ฒ ํจํ๊ณ , 5๋ฒ์๊ฒ ์ด๊ฒผ์์ผ๋ก 4๋ฑ์ด๋ผ๊ณ ํ๋ค. 5๋ฒ์ ๊ทธ 2๋ฒ์๊ฒ ์ก์์ผ๋ก, 1,3,4๋ฒ์๊ฒ๋ ๊ฐ์ ์ ์ผ๋ก ์ง ๊ฒ์ด๋ค. ๋ฐ๋ผ์ 2, 5๋ฒ์ ๋ชจ๋ ์ ์ ์ ๋ํด์ ์์ด์ ๊ฐ์ง๋ค.(1) ๋จ ๋ฐฉํฅ ๊ทธ๋ํ๋ฅผ ๋ ๊ฐ ๋ง๋ค๊ธฐ์ฒซ ๋ฒ์งธ ๋ฐฉ๋ฒ์ ๋จ ๋ฐฉํฅ ๊ทธ๋ํ 2๊ฐ ๋ง๋ค๊ธฐ ์ด๋ค.์ฐ๋ฆฌ์ ํต์ฌ์, ํ์ฌ ์กฐํ ์ค์ธ ์ ์ ์ด ๊ฐ์ ์ ์ผ๋ก๋ผ๋, ๋ชจ๋ ์ ์ ๊ณผ ์์ด..
2024.08.15
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
Programmers ๋ด์ค ํด๋ฌ์คํฐ๋ง java ํ์ด
1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋งํฌ2. ์ ๊ทผ ๋ฐฉ์(1) HashSet์ ๋์ค๋ ๋ชจ๋ ๋ถ๋ถ ๋ฌธ์์ด์ ์ ์ฅํ๋ค. (2) map1 , map2๋ HashMap์ผ๋ก์ ๊ฐ ๋ฌธ์์ด์ ๋ฌธ์๊ฐ key, ๊ทธ ๋ฌธ์๊ฐ ๋์ค๋ ๊ฐ์๊ฐ value์ด๋ค. (3) hashSet์ ์ ์ฅ๋์ด ์๋ ๋ฌธ์๋ฅผ ํ๋์ฉ ๊บผ๋ธ๋ค. ํด๋น ๋ฌธ์์ ๊ฐ์๋ฅผ map1๊ณผ map2์์ ๊บผ๋ด์, ํฉ์งํฉ๊ณผ ๊ต์งํฉ์ ๊ณ์ฐํ๋ค.ํฉ์งํฉ: ๋ ์ค ๋ ๊ฐ์๊ฐ ๋ง์ ์ชฝ์ ๊ฐ์๋ฅผ ๋ํ๋ค.๊ต์งํฉ: ๋ ์ค ํ๋๋ผ๋ ๊ฐ์ด ์กด์ฌํ์ง ์์ผ๋ฉด ๋์ด๊ฐ๋ค. ๋ ๋ค ํด๋น ๊ฐ์ ๊ฐ์ง๊ณ ์๋ค๋ฉด ๊ฐ์๊ฐ ๋ ์ ์ ์ชฝ์ ๊ฐ์๋ฅผ ๋ํ๋ค.3. ์ฝ๋ ๋ถ์import java.io.*;import java.util.*;class Solution { public int solution(String str1, St..
2024.08.08
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
Programmers K์ง๋ฒ์์ ์์ ๊ฐ์ ๊ตฌํ๊ธฐ java ์ฌ์ด ํ์ด^^
1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋งํฌ2. ์ ๊ทผ ๋ฐฉ์ํด๋น ๋ฌธ์ ๋ ๋ฌธ์ ์์ ํ๋ผ๋ ๋๋ก๋ง ํ๋ฉด ๋๋ค.(1) ๋ฐ์ ์ซ์๋ฅผ N์ง๋ฒ์ผ๋ก ๋ณํํ๋ค.๋ฌธ์ ๋ฅผ ํ๋ ๋น์์๋ Integer.toString(n, radix) ๋ผ๋ ๋ฌธ๋ฒ์ ์์ง ๋ชปํ๋ค. ํด๋น ๋ฌธ๋ฒ์ n์ 2๋ฒ์งธ ์ธ์์ธ radix์ง๋ฒ์ผ๋ก ๋ณํํด์ String์ผ๋ก ๋ฐํํ๋ค. Integer.toString(n,2)์ด๋ฉด n์ 2์ง๋ฒ์ผ๋ก ๋ฐํํด์ String ๊ฐ์ผ๋ก ๋ฐํํ๋ ๊ฒ์ด๋ค.์ด ๋ฌธ๋ฒ์ ๋ชฐ๋ผ์, ์ง์ ๋ฐํํ๋ค.๋ฐํ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค.๋ฐ๊พธ๋ ค๋ ์๋ฅผ n, ์ง๋ฒ์ radix๋ผ๊ณ ํ ๋, n%radix == 0 ์ด ๋ ๋๊น์ง n์ radix๋ก ๋๋๋ค.์ด๋ ๋๋จธ์ง ๊ฐ์ ์ ์ฅํ๊ณ ์๋๋ค.๋๋์ด n%radix == 0 ์ด ๋๋ฉด ์ง๊ธ๊น์ง ๋์๋ ๋๋จธ์ง๋ค์ ์ญ์์ผ๋ก ์ค ์ธ์ด๋ค.์์ธํ ๋ณํ..
2024.08.07
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ด๋ฌผ ์บ๊ธฐ ํ์ด java
1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋งํฌ2. ์ ๊ทผ ๋ฐฉ์KEY WORD: GREEDY Algorithm๊ด๋ฌผ์ ์บ๋ ๋น์ฉ์ ์ต์ํ ํ๊ธฐ ์ํด์๋, ๋ ๊ณก๊ดญ์ด๋ก ์บค์ ๋, ๋น์ฉ์ด ์ ์ผ ๋ง์ด ๋๋ ๊ตฌ๊ฐ์ด ์์ ์ค๋๋ก, ๊ด๋ฌผ ๋ฆฌ์คํธ๋ฅผ ์ ๋ ฌํ๊ณ , ๊ตฌ๊ฐ๋ค์ ์ํํ๋ฉฐ, ๊ทธ๋ ๊ทธ๋ ์ต์ ์ ๊ณก๊ดญ์ด๋ก ์ผ์ฒ๋ฆฌ๋ฅผ ํด์ผํ๋ค.๊ทธ ์๋ฏธ์์ Greedy Algorithm์ ์จ์ผ ํ๋ ๊ฒ์ด๋ค.๊ด๋ฌผ์ ํฌ๊ธฐ๊ฐ 50๋ฐ์ ์๋จ์ผ๋ก ์๊ฐ๋ณต์ก๋ ๊ด๋ จํด์ ๊ฑฑ์ ํ ๊ฒ์ ์์ ๊ฒ ๊ฐ๋ค. ๊ทธ๋ ๋ค๋ฉด ํด์ผํ ์ผ์,๊ด๋ฌผ List๋ฅผ 5๊ฐ์ฉ ์๋ฅธ๋ค. ๊ทธ๊ฒ์ด ์ผ์ ๋จ์์ด๊ธฐ ๋๋ฌธ์ด๋ค.(๊ทผ๋ฐ ๊ด๋ฌผ์ด 5์ ๋ฐฐ์๋ก ์ ๋ง์ ๋จ์ด์ง ์ ์๋ค. ๊ทธ๋ฌ๋ฉด ๋งจ ๋ง์ง๋ง์ 3๊ฐ๋ 4๊ฐ๊ฐ ํ๋์ ๋ฌถ์์ด ๋ ์๋ ์์์ผ๋ก ์ด๋ฅผ ์ฃผ์ํด์ Loop๋ฅผ ์ง ๋ค.)๋๋ ์ง ๊ด๋ฌผ ๋ฌถ์์ ๋ ๊ณก๊ดญ์ด๋ก ์์
ํ์ ๋ ํผ๋ก..
2024.07.23
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด