์ „์ฒด ๊ธ€ 82

[Java] ๋‘ ์ˆ˜์˜ ํ•ฉ - ํˆฌ ํฌ์ธํ„ฐ (Lv. Sliver3)

๋‘ ์ˆ˜์˜ ํ•ฉ - ํˆฌ ํฌ์ธํ„ฐ (Lv. Sliver3)1. ๋ฌธ์ œ2. ํ’€์ด1. ๋ฌธ์ œhttps://www.acmicpc.net/problem/3273 2. ํ’€์ดimport java.util.*;import java.io.*;public class Main { public static int two_pointer(int N, int[] a, int x) { int result = 0; int left = 0; int right = N-1; int sum = 0; Arrays.sort(a); while (left  Arrays.sort(a); ๋ฅผ ํ†ตํ•ด a ๋ฐฐ์—ด์˜ ์š”์†Œ๋ฅผ ์ •๋ ฌ ํ•ด์ค๋‹ˆ๋‹ค.  12345678left      r..

[Java] ํŠธ๋ฆฌ์˜ ๋ถ€๋ชจ ์ฐพ๊ธฐ (Lv. Sliver2)

ํŠธ๋ฆฌ์˜ ๋ถ€๋ชจ ์ฐพ๊ธฐ (Lv. Sliver2)1. ๋ฌธ์ œ2. ํ’€์ด1. ๋ฌธ์ œhttps://www.acmicpc.net/problem/11725 2. ํ’€์ดimport java.util.*;import java.io.*;class Main { static int N; static ArrayList[] graph; static int[] parent; static boolean[] visited; public static void find_parent(int node) { visited[node] = true; for (int i : graph[node]) { if (!visited[i]) { pa..

[Java] ํŠธ๋ฆฌ ์ˆœํšŒ (Lv. Sliver1)

ํŠธ๋ฆฌ ์ˆœํšŒ (Lv. Sliver1)1. ๋ฌธ์ œ2. ํ’€์ด1. ๋ฌธ์ œhttps://www.acmicpc.net/problem/1991 2. ํ’€์ดimport java.io.*;import java.util.*;public class Main { static int[][] tree; static StringBuilder sb = new StringBuilder(); public static void preOrder(int start) { if (start != -18) { sb.append((char) (start + 'A' - 1)); preOrder(tree[start][0]); preOrder(tree[start][1]);..

[Git] Git Clone, Fork

Git Clone, Fork1. Git Clone2. Fork1. Git Clone๊ฐ™์€ ์ €์žฅ์†Œ์—์„œ ํŒ€์›๊ณผ ํ•จ๊ป˜ ์ž‘์—…ํ•  ๊ฒฝ์šฐ์—๋Š” git clone์„ ํ†ตํ•ด ์›๋ณธ ์ €์žฅ์†Œ๋ฅผ ๋กœ์ปฌ์— ๋ณต์ œํ•ฉ๋‹ˆ๋‹ค. 2. Fork๋‹ค๋ฅธ ์‚ฌ๋žŒ(ํŒ€)์˜ ์ €์žฅ์†Œ์—์„œ ๋‚ด ๊ณ„์ •์œผ๋กœ ๋ณต์‚ฌ ํ›„ ์ˆ˜์ •ํ•  ๋•Œ fork๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.PR๋กœ ์›๋ณธ์— ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ ๊ธฐ์—ฌ ๋˜๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ํ™œ์šฉํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.๋ฌธ์ œ๊ฐ€ ์žˆ์œผ๋ฉด ๋Œ“๊ธ€ ๋‚จ๊ฒจ์ฃผ์„ธ์š” !ํ”ผ๋“œ๋ฐฑ์€ ์–ธ์ œ๋‚˜ ํ™˜์˜์ž…๋‹ˆ๋‹ค

[Git] Issue, Pull Request, Code Review ์‚ฌ์šฉํ•˜์—ฌ ํ˜‘์—… (feat. PR ์Šน์ธ ํ›„ ํ•ด์•ผํ•  ์ผ)

Issue, Pull Request, Code Review ์‚ฌ์šฉํ•˜์—ฌ ํ˜‘์—… (feat. PR ์Šน์ธ ํ›„ ํ•ด์•ผํ•  ์ผ)0. git ๋ ˆํผ์ง€ํ† ๋ฆฌ ์—ฐ๊ฒฐ1. Issue2. Pull Request3. PR ์Šน์ธ ํ›„ ํ•ด์•ผํ•  ์ผ0. git ๋ ˆํผ์ง€ํ† ๋ฆฌ ์—ฐ๊ฒฐ์ง€๊ธˆ์€ ํ˜‘์—… ๊ธฐ๋Šฅ์„ ๊ณต๋ถ€ํ•  ๋ ˆํผ์ง€ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค์–ด์ฃผ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.ํ˜‘์—… ๊ธฐ๋Šฅ๋งŒ ์•Œ์•„๊ฐ€๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ ์ด ๊ณผ์ •์€ ๋„˜์–ด๊ฐ€์…”๋„ ์ข‹์Šต๋‹ˆ๋‹ค. ์ €๋Š” ์ด๋•Œ๊นŒ์ง€ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค๊ณ  ์ปค๋ฐ‹์„ ํ•˜๋ฉด์„œ ๋™์‹œ์— ๋ ˆํผ์ง€ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค๋ฉด์„œ ์ปค๋ฐ‹์„ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.๊ทธ๋ž˜์„œ ์ด๋ฒˆ์—๋Š” ๋ ˆํผ์ง€ํ† ๋ฆฌ๋ฅผ ๋จผ์ € ๋งŒ๋“ค๊ณ  ํ”„๋กœ์ ํŠธ๋ฅผ ์—ฐ๊ฒฐํ•ด๋ณด์•˜๊ณ , ๋ฐฉ๋ฒ•์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.  1. Issueํ”„๋กœ์ ํŠธ์— ๊ธฐ๋Šฅ์ด๋‚˜ ์ฝ”๋“œ ๋˜๋Š” ์„ค์ • ๋“ฑ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์ปค๋ฐ‹์„ ํ•˜๊ณ  ์‹ถ์„ ๋•Œ, Issue๋ฅผ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.Issue์—๋Š” ์™œ ์ด ์ฝ”๋“œ๊ฐ€ ํ•„์š”ํ•œ์ง€, ์ด ์ฝ”๋“œ..

[Huffman] ํ—ˆํ”„๋งŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜

ํ—ˆํ”„๋งŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜1. ํ—ˆํ”„๋งŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜1. ํ—ˆํ”„๋งŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜ํ…์ŠคํŠธ ์••์ถ•์„ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ž…๋‹ˆ๋‹ค.์ฃผ์–ด์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ์••์ถ•ํ•˜๊ธฐ ์œ„ํ•ด ๋นˆ๋„๊ฐ€ ๋†’์€ ๋ฌธ์ž๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋” ์งง์€ ์ฝ”๋“œ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. - ๋™์ž‘ ๊ณผ์ •1. ๋ฌธ์ž ๋นˆ๋„ ๊ณ„์‚ฐ2. ์ตœ์†Œ ํž™3. ํŠธ๋ฆฌ ์ƒ์„ฑ4. ํ—ˆํ”„๋งŒ ์ฝ”๋“œ ์ถœ๋ ฅ์ฐธ๊ณ  ์‚ฌ์ดํŠธ ํ—ˆํ”„๋งŒ(Huffman) ํŠธ๋ฆฌ๋ฅผ ์ด์šฉํ•œ ํ…์ŠคํŠธ ์••์ถ•๊ฐœ์š” ํ—ˆํ”„๋งŒ ์ฝ”๋”ฉ(Huffman coding)์€ ํ…์ŠคํŠธ ์••์ถ•์„ ์œ„ํ•ด ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ, ์›๋ณธ ๋ฐ์ดํ„ฐ์—์„œ ์ž์ฃผ ์ถœํ˜„ํ•˜๋Š” ๋ฌธ์ž๋Š” ์ ์€ ๋น„ํŠธ์˜ ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ํ‘œํ˜„ํ•˜๊ณ  ์ถœํ˜„ ๋นˆ๋„๊ฐ€ ๋‚ฎ์€ ๋ฌธ์ž๋Š” ๋งŽ์€ ๋น„lipcoder.tistory.com ๋ฌธ์ œ๊ฐ€ ์žˆ์œผ๋ฉด ๋Œ“๊ธ€ ๋‚จ๊ฒจ์ฃผ์„ธ์š” !ํ”ผ๋“œ๋ฐฑ์€ ์–ธ์ œ๋‚˜ ํ™˜์˜์ž…๋‹ˆ๋‹ค

[Security] SQL Injection, SSL/TLS, CORS, HTTPS, XSS, CSRF, DoS/DDoS, JWT

SQL Injection, SSL/TLS, CORS, HTTPS, XSS, CSRF, DoS/DDoS, JWT1. SQL Injection2. SSL/TLS3. CORS4. HTTPS5. XSS6. CSRF7. DoS/DDoS8. JWT1. SQL Injection์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ ์ ˆํžˆ ํ•„ํ„ฐ๋งํ•˜์ง€ ์•Š๊ณ  SQL ์ฟผ๋ฆฌ์— ์ง์ ‘ ์‚ฝ์ž…ํ•  ๊ฒฝ์šฐ ๋ฐœ์ƒํ•˜๋Š” ๋ณด์•ˆ ์ทจ์•ฝ์ ์ž…๋‹ˆ๋‹ค.๊ณต๊ฒฉ์ž๋Š” ์•…์˜์ ์ธ SQL ๋ฌธ์„ ์‚ฝ์ž…ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ •๋ณด๋ฅผ ์œ ์ถœํ•˜๊ฑฐ๋‚˜ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. SELECT * FROM users WHERE username = 'admin' OR 1=1 --' AND password = '์•„๋ฌด ๊ฐ’' 1=1์€ ํ•ญ์ƒ ์ฐธ์ด๋ฏ€๋กœ ๋ชจ๋“  ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 2. SSL/TLS์ธํ„ฐ๋„ท์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธ..

๐Ÿ“— CS 2025.02.14

[RESTful] RESTful ์„œ๋น„์Šค๋ž€?

RESTful ์„œ๋น„์Šค๋ž€?1. REST1. REST API2. RESTful1. RESTREST(Representational State Transfer)๋Š” ์›น ๊ธฐ๋ฐ˜ ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์„ ์œ„ํ•œ ์•„ํ‚คํ…์ฒ˜ ์Šคํƒ€์ผ์ž…๋‹ˆ๋‹ค.HTTP URI(Uniform Resource Identifier)๋ฅผ ํ†ตํ•ด ์ž์›์„ ์‹๋ณ„ํ•˜๊ณ , HTTP Method(GET, POST, PUT, PATCH, DELETE)๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ์ž์›์— ๋Œ€ํ•œ CRUD ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. - HTTP Method1. GET์ž์› ์กฐํšŒ 2. POST์ž์› ์ƒ์„ฑ 3. PUT์ž์› ์ˆ˜์ •(์ „์ฒด) 4. PATCH์ž์› ์ˆ˜์ •(์ผ๋ถ€๋งŒ) 5. DELETE์ž์› ์‚ญ์ œ - REST ์•„ํ‚คํ…์ฒ˜ ์‚ฌ์šฉ ์ด์œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๋ฅผ ๋ช…ํ™•ํ•˜๊ฒŒ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.HTTP ๋ฉ”์†Œ๋“œ ์ค‘ GET๊ณผ POST๋งŒ ..

[Java] ์ง‘ํ•ฉ์˜ ํ‘œํ˜„ - ์œ ๋‹ˆ์˜จ ํŒŒ์ธ๋“œ (Lv. Gold5)

์ง‘ํ•ฉ์˜ ํ‘œํ˜„ - ์œ ๋‹ˆ์˜จ ํŒŒ์ธ๋“œ (Lv. Gold5)1. ๋ฌธ์ œ2. ํ’€์ด1. ๋ฌธ์ œhttps://www.acmicpc.net/problem/1717 2. ํ’€์ดimport java.util.*;import java.io.*;class Main { static int[] par; public static int _find(int A) { if (par[A] == A) return A; return par[A] = _find(par[A]); } public static void _union(int A, int B) { int rootA = _find(A); int rootB = _find(B); ..