https://school.programmers.co.kr/learn/courses/30/lessons/118666 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr ๊ฐ ์ ํ์ ์์๋๋ก ๋ฐฐ์ด์ ๋ฃ๊ณ , ๊ฐ ์ ํ๋ณ๋ก ์ ์ํ์ ๊ณ์ฐํ ๋ฐฐ์ด๋ ์์ฑํด์ฃผ๊ณ choices์ ๊ฐ๋ค์ ๋ฐ๋ก index๋ก ๊ณ์ฐํด์ ์ ์๋ฅผ ์ถ๊ฐํด์ค๋ค. ( ์ ์ ๋ฐฐ์ด score๋ ์์ฑ ) 2๊ฐ์ง ์ ํ๋ง๋ค ๊ณ์ ๋น๊ตํ๋๊น, ์ผ์ชฝ์ ์ ํ์ ์ ์๋ฅผ ์ถ๊ฐํ ๋๋ 1~3์ ์ผ๋๊ณ , ์ค๋ฅธ์ชฝ์ ํ์ ์ ์๋ฅผ ์ถ๊ฐํ ๋๋ 5~7์ ์ด๋ ๊ทธ ๋๊ฐ์ง ๊ฒฝ์ฐ์ ์๋ฅผ ๋๋์ด์ ํ์ฌ ์ถ๊ฐ๋ ์ ํ์ calc์ index๋ฅผ ์ฐพ์์ ca..
โ String.Format() String์ static ๋ฉ์๋์ธ format ๋ฉ์๋๋ ๋ฌธ์์ด์ ํ์์ ์ค์ ํ๋ ๋ฉ์๋์ด๋ค. โ ์ข ๋ฅ %d : 10์ง์ %s : ๋ฌธ์์ด %f : ์ค์ํ %t : ๋ ์ง ์๊ฐ %c : ์ ๋์ฝ๋ ๋ฌธ์ %o, %x ( 8์ง์, 16์ง์ ) โ ์์ int num = 5; String str = String.format("%05d", num); System.out.println(str); // input : 45 // output : 00045 * 10์ง์๋ฅผ 2์ง์๋ก ๋ณํํด์ ์ฌ์ฉํด์ผํ๋๋ฐ ํน์ ํ ์๋ฆฟ์(n)๋ฅผ ๋ง์ถฐ์ผ ํ ๋ int n = 5; String binaryArr = String.format("%" + n + "s", Integer.toBinaryString(arr1[..
https://school.programmers.co.kr/learn/courses/30/lessons/160586 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr ๋จผ์ ์ ๊ฒฝ์ด ๋ถ๋ถ์ ์ฐพ์ target๋ฌธ์์ด์ค ๋ฌธ์๊ฐ ๋ง์ฝ์ ์๋ค๋ฉด -1 ๋ก ๋๋๋๊ฒ์ด๋ค. ๊ทธ๋์ keymap์ ๋ฌธ์์ด์ ๋ชจ๋ ๋ํด์, ์ฐพ์ ์ ์๋์ง ์๋์ง ๋จผ์ ํ๋ณํ๋ค. ๊ทผ๋ฐ ๊ณ์ ์ค๋ต์ด ๋์๋๊ฒ .. ! keymap ์ ์ฒด ๋ฐฐ์ด์ค ์ฐพ์์๋ ์์ด์ indexOf๋ก ์์ฐจ์ ์ผ๋ก ๊ฐ์ฅ ์์ ์์ index๋ฅผ ๊ตฌํ๋๋ฐ keymap[0] ์์๋ ํด๋น ๋ฌธ์๊ฐ ์๊ณ keymap[1] ์๋ ์์๊ฒฝ์ฐ 0์ด๋ผ๋..
๐ DFS & BFS ์ต์ข ์ ๋ฆฌ DFS : Depth First Search ๊น์ด ์ฐ์ ํ์ BFS : Breadth First Search ๋๋น ์ฐ์ ํ์ ๊ทธ๋ํ๋ฅผ ํ์ํ๊ธฐ ์ํ ๋ํ์ ์ธ ์๊ณ ๋ฆฌ์ฆ DFS, BFS๋ฅผ ์ดํดํ๊ธฐ ์ํด์๋ ์คํ, ํ, ์ฌ๊ท๋ฅผ ๋จผ์ ์์์ผํ๋ค. ํ(Queue) ์คํ๊ณผ ๋ฐ๋๋ก FIFO ๊ฐ๋ ์ผ๋ก ๋จผ์ ๋ค์ด๊ฐ ๊ฒ์ด ๋จผ์ ๋๊ฐ๋ ์๋ฃ๊ตฌ์กฐ์ด๋ค. public class Main{ public static void main(String[] args) { Queue Q = new LinkedList(); Q.offer(1); Q.offer(2); Q.offer(3); Q.poll(); // 1 ์ถ๋ ฅ Q.offer(4); Q.poll(); // 2 ์ถ๋ ฅ } } ์ ์ญ ํด๋์ค Node DFS์ BF..
๐ ์คํํ๋ ์ & ์ฌ๊ทํจ์ ์คํ ํ๋ ์ ์คํ ํ๋ ์์ ๋ฉ๋ชจ๋ฆฌ์ ์คํ์์ญ์ ํจ์์ ํธ์ถ๊ณผ ๊ด๊ณ๋๋ ์ง์ญ๋ณ์์ ๋งค๊ฐ ๋ณ์๊ฐ ์ ์ฅ๋๋ ์์ญ์ด๋ค. ์คํ ์์ญ์ ํจ์์ ํธ์ถ๊ณผ ํจ๊ป ํ ๋น๋๋ฉฐ, ํจ์์ ํธ์ถ์ด ์๋ฃ๋๋ฉด ์๋ฉธํ๋ค. ํจ์๊ฐ ํธ์ถ๋๋ฉด ์คํ์๋ ํจ์์ ๋งค๊ฐ๋ณ์, ํธ์ถ์ด ๋๋ ๋ค ๋์๊ฐ๋ ๋ฐํ ์ฃผ์ ๊ฐ, ํจ์์์ ์ ์ธ๋ ์ง์ญ๋ณ์ ๋ฑ์ด ์ ์ฅ๋๋ค. ์ด๋ ๊ฒ ์คํ ์์ญ์ ์ฐจ๋ก๋๋ก ์ ์ฅ๋๋ ํจ์์ ํธ์ถ ์ ๋ณด๋ฅผ ์คํ ํ๋ ์ ์ด๋ผ๊ณ ํ๋ค. ์คํ ํ๋ ์์ ํ์ฉํ๋ฉด ํจ์์ ํธ์ถ์ด ๋ชจ๋ ๋๋ ๋ค์ ํด๋น ํจ์๊ฐ ํธ์ถ๋๊ธฐ ์ด์ ์ํ๋ก ๋๋์๊ฐ ์ ์๋ค. ์ฌ๊ทํจ์ public class Recursive { public static void main(String[] args){ Recursive T = new Recursive(); ..
๐ Comparable & Comparator - Comparable๊ณผ Comparator๋ ๋ชจ๋ ์ธํฐํ์ด์ค์ด๋ค. - ์ฆ, ์ฌ์ฉํ๊ณ ์ ํ๋ค๋ฉด ์ธํฐํ์ด์ค ๋ด์ ์ ์ธ๋ ๋ฉ์๋๋ฅผ ๋ฐ๋์ ๊ตฌํ ํด์ผํ๋ค. ๋ณดํต Comparable ์ธํฐํ์ด์ค์๋ compareTo(T o) ๋ฉ์๋ ํ๋๊ฐ ์ ์ธ๋์ด์๋ค. ์ด๊ฒ์ compareTo ๋ฉ์๋๋ฅผ ์ฌ์ ์(Override)ํด์ผ ํ๋ค๋ ๊ฒ์ด๋ค. Comparator์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด compare ๋ฉ์๋๋ฅผ ๊ตฌํํด์ผ ํ๊ณ , Comparable ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด compareTo ๋ฉ์๋๋ฅผ ๊ตฌํํด์ผํ๋ค. โ Comparable & Comparator " ๊ฐ์ฒด๋ฅผ ๋น๊ตํ ์ ์๋๋ก ๋ง๋ ๋ค " Why ? ์๋๋ byte, int, double ๋ฑ ๋ถ๋ฑํธ๋ฅผ ํตํด ์ฝ๊ฒ ๋ ๋ณ์๋ฅผ ๋น๊ตํ ..
https://school.programmers.co.kr/learn/courses/30/lessons/12915 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr 1๋ฒ ํ์ด import java.util.*; class Solution { public String[] solution(String[] strings, int n) { String[] answer = new String[strings.length]; List list = new ArrayList(); for(int i=0; i
๐ TreeSet TreeSet TreeSet์ Set ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ ํด๋์ค๋ก์จ ๊ฐ์ฒด๋ฅผ ์ค๋ณตํด์ ์ ์ฅํ ์ ์๊ณ ์ ์ฅ ์์๊ฐ ์ ์ง๋์ง ์๋๋ค๋ Set์ ์ฑ์ง์ ๊ทธ๋๋ก ๊ฐ์ง๊ณ ์๋ค. ์ด์ง ํ์ ํธ๋ฆฌ์ ๊ตฌ์กฐ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ์ถ๊ฐ์ ์ญ์ ์๋ ์๊ฐ์ด ์กฐ๊ธ ๋ ๊ฑธ๋ฆฌ์ง๋ง, ์ ๋ ฌ๊ณผ ๊ฒ์์ ๋์ ์ฑ๋ฅ์ ๋ณด์ด๋ ์๋ฃ๊ตฌ์กฐ์ด๋ค. ์ด์งํ์ํธ๋ฆฌ์ ํํ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ์ ๊ธฐ๋ณธ์ ์ผ๋ก Nature Ordering์ ์ง์ํ๋ฉฐ ์์ฑ์์ ๋งค๊ฐ๋ณ์๋ก Comparator ๊ฐ์ฒด๋ฅผ ์ ๋ ฅํ์ฌ ์ ๋ ฌ ๋ฐฉ๋ฒ์ ์์๋ก ์ง์ ํด์ค ์๋ ์๋ค. ๋ ๋ ๋ธ๋ ํธ๋ฆฌ : ๋ถ๋ชจ๋ ธ๋๋ณด๋ค ์์ ๊ฐ์ ๊ฐ์ง๋ ๋ ธ๋๋ ์ผ์ชฝ ์์์ผ๋ก, ํฐ ๊ฐ์ ๊ฐ์ง๊ณ ์๋ ๋ ธ๋๋ ์ค๋ฅธ์ชฝ ์์์ผ๋ก ๋ฐฐ์นํ์ฌ ๋ฐ์ดํฐ์ ์ถ๊ฐ๋ ์ญ์ ์ ํธ๋ฆฌ๊ฐ ํ์ชฝ์ผ๋ก ์น์ฐ์ณ์ ธ์์ง ์๋๋ก ๊ท ํ์ ๋ง์ถ์ด์ค๋ค...