๐ 1. ๋ฌธ์ ์ค๋ช
๐ก 2. ์ ๊ทผ๋ฐฉ์์ด ๋ฌธ์ ๋ ๋๋ฌด ์ด๋ ค์์ ์ค์ค๋ก ํ๊ธฐ ํ๋ค์ด์ ๊ฒ์์ ๋์์ ๋ฐ์.์ฃผ์ด์ง ๋ฌธ์ ๋ ๊ทธ๋ํ ์ด๋ก ์ ์ต์ ์ ์ฅ ํธ๋ฆฌ(MST, Minimum Spanning Tree) ๋ฌธ์ ์ด๋ค. ์ด ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด ํ์ํ ์ ์ ์ง์- Union-Find(์ ๋์จ ํ์ธ๋) ์๋ฃ๊ตฌ์กฐ- Kruskal's Algorithm (ํฌ๋ฃจ์ค์นผ) ์๊ณ ๋ฆฌ์ฆ Kruskal's Algorithm (ํฌ๋ฃจ์ค์นผ ์๊ณ ๋ฆฌ์ฆ)ํฌ๋ฃจ์ค์นผ ์๊ณ ๋ฆฌ์ฆ์ ์์ ๋งํ ์ต์์ ์ฅํธ๋ฆฌ(MST)๋ฅผ ๊ตฌํ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋ฌธ์ ์ ๋ถ๋ฅ ๋ต๊ฒ greedy์๊ณ ๋ฆฌ์ฆ์ผ๋ก ๊ฒฐ์ ์ ์๊ฐ๋ง๋ค ์ต์ ์ ๊ฒฐ์ ์ ํจ์ผ๋ก์ ์ต์ข
์ ์ธ ๋ต์ ๊ตฌํ๋ ๋ฐฉ์์ผ๋ก ๋ชจ๋ ์ ์ ์ ์ต์ ๋น์ฉ์ผ๋ก ์ฐ๊ฒฐํ ์ ์๊ฒ ํด์ค๋ค.ํฌ๋ฃจ์ค์นผ ์๊ณ ๋ฆฌ์ฆ์ ํต์ฌ์ ๋ชจ๋ ๊ฐ์ ์ ๊ฐ์ค์น ๊ธฐ์ค(์ฌ๊ธฐ์๋ ๋ค๋ฆฌ ๊ฐ์ค..
My Tech Blog (์๋ฐ)
๐ 1. ๋ฌธ์ ์ค๋ช
๐ก 2. ์ ๊ทผ๋ฐฉ์์
์ถ๋ ฅ ์๋ก ์ฃผ์ด์ง route ๋ฐฐ์ด์ ๋ง๋๊ทธ๋ํ๋ก ๊ทธ๋ ค ๋ดค๋ค. ์ต์ํ์ ์นด๋ฉ๋ผ๋ฅผ ๋ฐฐ์นํด์ผ ํ๋ฏ๋ก ๊ตฌ๊ฐ ์ข
๋ฃ ์์น๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ ์ฐจ๋์ด ๊ตฌ๊ฐ์์ ์นด๋ฉ๋ผ๋ฅผ ๋จ ํ ๋ฒ๋ง์ด๋ผ๋ ๋ง๋๋ฉด ๋จ์ข
๋ฃ ์ง์ ์์ ๋ค์ ๊ตฌ๊ฐ๊ณผ ๊ฒน์น๊ฒ ๋๋ฏ๋ก ์ต์ํ์ ์นด๋ฉ๋ผ๋ฅผ ๋ฐฐ์น๊ฐ๋ฅ์นด๋ฉ๋ผ ๋ฐฐ์น๋ ๋๋ก์ ๊ฐ์ฅ ์ผ์ชฝ ๋๋ถํฐ ํ์ํ๋ฉฐ ์์๋๋ค.์
์ถ๋ ฅ ์์์์ MIN_VALUE์ธ -20 ์ง์ ๋ถํฐ ์ค๋ฅธ์ชฝ์ผ๋ก ๊ฐ๋ฉฐ ์ข
๋ฃ๊ตฌ๊ฐ๊ณผ ์์๊ตฌ๊ฐ์ด ๊ฒน์น๋ ๋ถ๋ถ์ ์นด๋ฉ๋ผ๊ฐ ๋ฐฐ์น๋๋ค.๊ตฌ๊ฐ ์ค ๊ฐ์ฅ ์ฒ์์ผ๋ก ๋ง๋๋ ์ข
๋ฃ ์์น๋ -15์ด๋ค.๋ฐ๋ผ์ ์ด ์์น์ ์ฒซ ๋ฒ์งธ ์นด๋ฉ๋ผ๋ฅผ ์ค์นํ๋ค. ๊ทธ๋ฆฌ๊ณ -13์ง์ ์์ ํ์ฌ ๊ตฌ๊ฐ๊ณผ ๋ค์ ๊ตฌ๊ฐ์ด ๋ง๋์ง๋ง ์ด๋ฏธ ํด๋น ๊ตฌ๊ฐ์๋ ์นด๋ฉ๋ผ๊ฐ ์ค์น ์๋ฃ ๋์์ผ๋ฏ๋ก ์คํตํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋ค์ ๊ตฌ๊ฐ์ธ [-..
๐ 1. ๋ฌธ์ ์ค๋ช
๐ก 2. ์ ๊ทผ๋ฐฉ์ ๋ฌธ์ ์ ํ์กฐ๊ฑด1. ํ ๋ฒ์ ์ต๋ ๋๋ช
๊น์ง ๋ณดํธ์ ํ์ธ ์ ์์2. ๋ชธ๋ฌด๊ฒ ํฉ์ด `limit` ์ดํ์ฌ์ผ ํจ ๋ฐ๋ผ์ ์ต์๋ณดํธ๋ฅผ ์ฌ์ฉํ๋ ์ ๋ต์ ์ง๋ ค๋ฉด ๋ฐฐ์ด์ ์ ๋ ฌํ์ฌ ๊ฐ์ฅ ๊ฐ๋ฒผ์ด ์ฌ๋ + ๊ฐ์ฅ ๋ฌด๊ฑฐ์ด ์ฌ๋ ์กฐํฉ์ ์ง์ง์ด์ผ ํจ.๊ฐ์ฅ ํฐ ๋ชธ๋ฌด๊ฒ๋ฅผ ๊ฐ์ง ์ฌ๋์ ์ต๋ํ ๋นจ๋ฆฌ ์ฒ๋ฆฌํ๋ฉด์๋ ๋ณดํธ ์ฌ์ฉ์ ์ค์ผ ๊ฐ๋ฅ์ฑ์ด ๋๊ธฐ ๋๋ฌธ์ด๋ค.๋ง์ฝ ๋ ์ฌ๋์ ๋ชธ๋ฌด๊ฒ ํฉ์ด limit ์ดํ๋ผ๋ฉด, ํ ๋ณดํธ์ ํ์ธ ์ ์๋ค. ํฉ์ด limit์ ์ด๊ณผํ๋ค๋ฉด, ๋ฌด๊ฑฐ์ด ์ฌ๋์ ๋ฐ๋์ ํ ๋ช
๋ง ๋ณดํธ์ ํ์์ผ ํ๋ค.์ด๋ ๊ฒ ํ๋ ๊ฒ์ด ๋จ์ ์ฌ๋๋ค์ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ๊ธฐ ์ํ ์ต์ ์ ์ ํ์ด๋ค. โญ 3. ์ ๋ต์ฝ๋import java.util.*;class Solution { public int solution(i..
๐ 1. ๋ฌธ์ ์ค๋ช
๐ก 2. ์ ๊ทผ๋ฐฉ์์์ ํ์์ ์๋๋ ์ด์ ๋ฌธ์ ์์ number≤1,000,000์ผ๋ก ์ต๋ ๋ฐฑ๋ง์๋ฆฌ ์ซ์๊ฐ ๋ ์ ์๋ค. number ๊ฐ์ด ๋๋ฌด ์ปค์ ์์ ํ์์ ํ์ค์ ์ผ๋ก ๋ถ๊ฐ๋ฅํ๋ค. k๋ 1 ์ด์ len(number) - 1 ์ดํ์๋ฅผ ๋ค์ด, ์ซ์๊ฐ 1,000,000์๋ฆฌ๋ผ๋ฉด ์ต๋ 999,999๊ฐ์ ์ซ์๋ฅผ ์ ๊ฑฐํด์ผ ํ๋ค. ์ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ์จ์ผ ํ๋๊ฐ?์ซ์๋ฅผ ํ ๋ฒ๋ง ์ํํ๋ฉด์ ์ ์ ํ ์ซ์๋ฅผ ์ ํํ๊ฑฐ๋ ์ ๊ฑฐํ๋ค. ์ซ์๊ฐ ๋ฐฑ๋ง ์๋ฆฌ์ฌ๋ 1,000,000๋ฒ์ ๋น๊ต๋ง ํ๋ฉด ๋๊ธฐ ๋๋ฌธ์ ํจ์จ์ด ์ข๋ค.๋ฌธ์ ์ ํต์ฌ = '์์์๋ถํฐ ๋ค๋ก ํฐ ์ซ์ ์ ์ง'์์๋ฆฌ๋ถํฐ ์์๋๋ก ์ซ์๋ฅผ ์ ํํ๋ฉฐ ํฐ ์ซ์๋ฅผ ์ ์งํ๋ ๋ฐฉ์์ผ๋ก ํ์ด์ผ ํ๋ค.๋๋ ์ด์คํฌ๋ฌธ์ผ๋ก ํ์๋๋ฐ ๋ค๋ฅธ ๋ถ๋ค์ด ํ์ดํ ๊ฑธ ๋ณด๋ ์คํ์ ์ฌ์ฉํด ๋..
๐ 1. ๋์๋ฌธ์ ๋ฐ๊ฟ์ ์ถ๋ ฅํ๊ธฐimport java.util.Scanner;public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String a = sc.next(); System.out.println(swapCase(a)); } public static String swapCase(String str) { StringBuilder result = new StringBuilder(); for(char c:str.toCharArray()) { if(Character.isUpperCase(c) ) { resu..
์๋ฐ JDBC๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฐ๊ฒฐํ ๋ ์ฌ์ฉํ ์์์ `connection.close()` ์ฒ๋ผ `close()` ๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ ๋ซ์ ์ฃผ์ด์ผ ํ๋ค. ํ์ง๋ง try with resources ๊ตฌ๋ฌธ์ ์ฌ์ฉํ๋ฉด ๋ณ๋๋ก ์์ํด์ ๋ฅผ ์ ํด ์ค๋ ๋๋ค. try ๊ตฌ๋ฌธ์์ ์์์ ์ ์ธํ๋ฉด ์๋์ผ๋ก ํด์ ๋๊ธฐ ๋๋ฌธ์ด๋ค.์ด์ฒ๋ผ try-with-resources๋ ๋ฆฌ์์ค ๊ด๋ฆฌ๊ฐ ์ค์ํ ํ๋ก๊ทธ๋จ์์ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๊ณ ์ฝ๋ ํ์ง์ ๋์ด๋ ๋งค์ฐ ์ ์ฉํ ๊ธฐ๋ฅ์ด๋ค. ํ์ผ ์
์ถ๋ ฅ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ, ๋คํธ์ํฌ ์์ผ ๋ฑ ๋ค์ํ ์ํฉ์์ ํ์ฉ ๊ฐ๋ฅํ๋ค. ๊ธฐ๋ณธ์ฌ์ฉ๋ฒ์ฝ๋์์ ๋ณผ ์ ์๋ฏ์ด try-with-resources์ ๊ธฐ๋ณธ ํ์์ try๋ฌธ ์์์ ์์์ ์ ์ธํ๋ ๊ฒ์ด๋ค.try (๋ฆฌ์์ค_ํ์
๋ฆฌ์์ค_์ด๋ฆ = new ๋ฆฌ์์ค_ํ์
()) {..
๐ 1. ๋ฌธ์ ์ค๋ช
๐ก 2. ์ ๊ทผ๋ฐฉ์๋ฌธ์ ์์ ์ฃผ์ด์ง ๋งค๊ฐ๋ณ์- ์์ด์ ๋ํ๋ด๋ ์ ์ ๋ฐฐ์ด `sequence`- ๋ถ๋ถ ์์ด์ ํฉ์ ๋ํ๋ด๋ ์ ์ `k` ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๋ถ๋ถ ์์ด์ ์์ ์ธ๋ฑ์ค์ ๋ง์ง๋ง ์ธ๋ฑ์ค๋ฅผ ๋ฐฐ์ด๋ก returnํ๋ solution ํจ์๋ฅผ ์์ฑํ๋ ๋ฌธ์ ํฌํฌ์ธํฐ, ์ฌ๋ผ์ด๋ฉ ์๋์ฐ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ํผ๋ค.- start: ์๋์ฐ์ ์์ ์ธ๋ฑ์ค- end: ์๋์ฐ์ ๋ ์ธ๋ฑ์ค (or ๋ค์ ํ์ํ ์์น) `ํฌํฌ์ธํฐ`ํ๋์ ํฌ์ธํฐ๋ ๋ฐฐ์ด์ ์์์, ๋ค๋ฅธ ํ๋๋ ๋ฐฐ์ด์ ๋์ ๊ฐ๋ฆฌํค๋ฉฐ ์์ํน์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๊ตฌ๊ฐ์ ์ฐพ๋๊ฒ์ด๋ค. `์ฌ๋ผ์ด๋ฉ ์๋์ฐ ์๊ณ ๋ฆฌ์ฆ`๋ถ๋ถ ๋ฐฐ์ด, ๋ถ๋ถ ๋ฌธ์์ด ๋ฌธ์ ์์ ์์ฃผ ์ฌ์ฉ๋๋ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๊ตฌ๊ฐ์ ์ฐพ๊ฑฐ๋, ๊ณ ์ ๋ ํฌ๊ธฐ ๊ตฌ๊ฐ์ ํฉ๊ณ, ์ต๋๊ฐ, ์ต์๊ฐ ๋ฑ์ ๊ตฌํ ๋ ์ ..
1. write.jsp ๊ธ์ฐ๊ธฐ ํ์ด์ง ๋ง๋ค๊ธฐ ๋จผ์ ๊ฒ์๊ธ ์์ฑ ํ์ด์ง `write.jsp`๋ฅผ ๋ง๋ค์ด ์ฃผ๋ ค๊ณ ํ๋ค.`bbs.jsp`๋ฅผ ๋ณต์ฌํด์ ๋ถ์ฌ ๋ฃ๊ณ ์ค๊ฐ ๋ถ๋ถ๋ง ์์ ํด ์ค ๊ฒ์ด๋ค. nav๋ฐ ์๋ ๋ถ๋ถ์ ์ด๋ ๊ฒ ์ฝ๋๋ฅผ ์์ฑBootstrap5 ์ด์ฉํ๋ค. โก `mt-5` margin-top: 5rem; โก ``ํ๊ทธ์ `required` ์์ฑ ๋ฃ์ผ๋ฉด ๋ธ๋ผ์ฐ์ ์์ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ํจ. ํ
์คํธ๋ฅผ ์
๋ ฅ ์ ํ ์ฑ๋ก submit ํ๋ฉด `์ด ์
๋ ฅ๋์ ์์ฑํ์ธ์.` ๋ผ๋ ๊ฒฝ๊ณ ๋ฉ์ธ์ง๋ฅผ ๋์ด๋ค. โก `form-control` ํด๋์ค Bootstrap์์ ์ ๊ณตํ๋ ํด๋์ค ์ค ํ๋๋ก, ์
๋ ฅ ํ๋์ ์คํ์ผ์ ์ฝ๊ฒ ์ผ๊ด์ฑ ์๊ฒ ์ ์ฉํ๊ธฐ ์ํด ์ฌ์ฉ๋จ.์ด๊ฑฐ ์ฐ๋ฉด ์
๋ ฅ ํ๋(input, textarea, select ๋ฑ)๊ฐ ๊ธฐ๋ณธ..