Banner

My Tech Blog (๋ณ€ํ™˜)

์˜ค๋Š˜์˜ ๋ช…์–ธ
์š”์ฆ˜ ์ฑ—GPT๋กœ ์งค๋งŒ๋“ค๊ธฐ ๋Œ€์œ ํ–‰์ธ๊ฑฐ ์•„์‹œ์ฃ ? ์ง€๋‚œ 25์ผ ์ถœ์‹œ๋œ ์ฑ—GPT-4o ์ด๋ฏธ์ง€ ์ƒ์„ฑ ๋ชจ๋ธ์€ ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์ง„์„ ์—…๋กœ๋“œํ•˜๋ฉด ์ด๋ฅผ ์‹ฌ์Šจ, ์Šค๋จธํ”„, ๋ ˆ๊ณ  ๋“ฑ ์œ ๋ช… ์• ๋‹ˆ๋ฉ”์ด์…˜ ํ™”ํ’์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ”๊ณ  ์žˆ๋‹ค. ํŠนํžˆ ์ผ๋ณธ ์• ๋‹ˆ๋ฉ”์ด์…˜์˜ ๊ฑฐ์žฅ ๋ฏธ์•ผ์žํ‚ค ํ•˜์•ผ์˜ค ๊ฐ๋…์ด ์„ค๋ฆฝํ•œ ์ง€๋ธŒ๋ฆฌ ์Šคํƒ€์ผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ธฐ๋Šฅ์ด ๊ฐ€์žฅ ํฐ ์ธ๊ธฐ๋‹ค. ์˜ฌํŠธ๋จผ CEO ์—ญ์‹œ ์ž์‹ ์˜ Xํ”„๋กœํ•„ ์‚ฌ์ง„์„ ์ง€๋ธŒ๋ฆฌ ์Šคํƒ€์ผ๋กœ ๋ฐ”๊พธ๊ธฐ๋„ ํ–ˆ๋‹ค. ์˜คํ”ˆAI๊ฐ€ ์ถœ์‹œํ•œ ์ด๋ฏธ์ง€ ์ƒ์„ฑ ๋ชจ๋ธ์ด ์„œ๋ฒ„๊ฐ€ ๊ณผ๋ถ€ํ•˜์— ์‹œ๋‹ฌ๋ฆด ์ •๋„๋กœ ์ „์„ธ๊ณ„์ ์ธ ์ธ๊ธฐ๋ฅผ ๋Œ๊ณ  ์žˆ์–ด์š”. ์‚ฌ์ง„์ด๋‚˜ ์ด๋ฏธ์ง€๋ฅผ ์งค๋กœ ๋งŒ๋“ค์–ด์ฃผ๋Š” ๊ฑด ๋ฌผ๋ก , ์ด๋ฏธ์ง€๋ฅผ ๋ฌ˜์‚ฌํ•˜๋ฉด ์งค์„ ์ƒ์„ฑํ•ด ์ฃผ๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ €๋„ ์ž์ฃผ ์ด์šฉํ•˜๋Š”๋ฐ์š”. ๋ฏธ๊ตญ ์‹œ์—”๋น„์‹œ(CNBC) ๋“ฑ ์ฃผ์š” ์™ธ์‹ ์— ๋”ฐ๋ฅด๋ฉด, ์ƒ˜ ์˜ฌํŠธ๋จผ ์˜คํ”ˆ์—์ด์•„์ด ์ตœ๊ณ ๊ฒฝ์˜์ž(CEO..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช… ๐Ÿ’ก 2. ์˜ค๋‹ต์ •๋ฆฌ (ํ‹€๋ฆฐ์ฝ”๋“œ)class Solution { public String solution(String my_string, String letter) { StringBuilder sb = new StringBuilder(); for(char c : my_string.toCharArray()) { if(!c.equals(letter) sb.append(c); } return sb.toString(); }} string ํƒ€์ž…๋ผ๋ฆฌ ๋น„๊ตํ•  ๋•Œ๋Š” .equals ๋ฅผ ์“ด๋‹ค. ๊ทธ๋ž˜์„œ .equals์˜ ๋ถ€์ •์ธ !c.equals(letter)์„ ์ผ๋Š”๋ฐ ์ด ๋ถ€๋ถ„์ด ํ‹€๋ ธ๋‹ค. ํ‹€๋ฆฐ ์ด์œ ๋Š” String ์ด๋ž‘ char ํƒ€์ž…..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…10์ง„์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ 2์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•ด ๋ฐ˜ํ™˜ํ•˜๋Š” solution() ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š” ์ œ์•ฝ์กฐ๊ฑดdecimal์€ 1์ด์ƒ 10์–ต ๋ฏธ๋งŒ์˜ ์ž์—ฐ์ˆ˜์ž…์ถœ๋ ฅ ์˜ˆdecimalreturn10101027110111234511000000111001 ๐Ÿ’ก 2. ํ’€์ด ๊ณผ์ •10์ง„์ˆ˜๋ฅผ 2์ง„์ˆ˜๋กœ ํ‘œํ˜„ํ•˜๋Š” ๊ณผ์ •์€ ์ด๋ฏธ ์ˆ˜ํ•™์ ์œผ๋กœ ์ฆ๋ช…๋œ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ„๋‹จํ•˜๊ฒŒ ์ ๋Š”๋‹ค.10์ง„์ˆ˜ N์„ 2๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€, ์ฆ‰ %2 ์—ฐ์‚ฐ์„ ํ•œ ๊ฐ’์„ ์ €์žฅํ•˜๊ณ , N์€ ๋‹ค์‹œ 2๋กœ ๋‚˜๋ˆˆ๋‹ค.๋ชซ์ด 0์ด ์•„๋‹ˆ๋ผ๋ฉด ๋‚˜๋จธ์ง€๋ฅผ ๋ฒ„๋ฆฌ๊ณ  ๋‹ค์‹œ 1์„ ์ˆ˜ํ–‰ํ•œ๋‹ค๋ชจ๋“  ๊ณผ์ •์ด ๋๋‚˜๊ณ  1์—์„œ ์ €์žฅํ•œ ์ˆ˜๋ฅผ ๋’ค๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ ๊ฐ€์ ธ์™€ ๋ถ™์ธ๋‹ค.  ์˜ˆ๋ฅผ ๋“ค์–ด ์‹ญ์ง„์ˆ˜ 13์„ ์œ„ ๊ณผ์ •๋Œ€๋กœ 2์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ชจ์Šต์€ ์œ„ ๊ทธ๋ฆผ๊ณผ ๊ฐ™๋‹ค. 13์„ 2๋กœ ๋‚˜๋ˆ„์–ด๊ฐ€๋ฉด์„œ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅํ•œ ํ›„, ..
๋ธŒ๋ผ์šฐ์ € ์œ„์—์„œ ๋™์ž‘ํ•˜๋Š” ์›น์‚ฌ์ดํŠธ๋‚˜ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๊ฐ™์€ Client๋“ค์ด ์–ด๋–ป๊ฒŒ Server์™€ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ์„๊นŒ? 1. HTTP(Hypertext Transfer Protocal)Client ์™€ Server ์ด ์–ด๋–ป๊ฒŒ Hypertext๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ์„ ์ง€ ๊ทœ์•ฝํ•œ ํ”„๋กœํ† ์ฝœClient๊ฐ€ Server์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ requestํ•˜๋ฉด, Server๋Š” ๊ทธ์— ๋งž๋Š” response๋ฅผ Client๋กœ ๋ณด๋ƒ„ 2. AJAX(Asynchronous JavaScript And XML)์›นํŽ˜์ด์ง€์—์„œ ๋™์ ์œผ๋กœ ์„œ๋ฒ„์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ ๋Œ€ํ‘œ์ ์ธ ์˜ˆ๋กœ๋Š” ๋ธŒ๋ผ์šฐ์ €API์—์„œ ์ œ๊ณตํ•˜๋Š” XMLHttpRequest(XHR) ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ์žˆ๋‹ค.ํ˜น์€ fecth() API๋กœ ๊ฐ„ํŽธํ•˜๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.  3. XMLhtm..
๐Ÿ“š์กฐ๊ฑด์— ๋งž๋Š” ๋„์„œ ๋ฆฌ์ŠคํŠธ ์ถœ๋ ฅํ•˜๊ธฐ ์•„๋ž˜๋Š” ์ •๋‹ต์ฒ˜๋ฆฌ ๋˜๋Š” ๋ชจ๋‘ ๋™์ผํ•œ ์ฝ”๋“œ์ด๋‹ค BETWEEN ์—ฐ์‚ฐ์ž๋กœ ํ’€๊ธฐSELECT BOOK_ID, DATE_FORMAT(PUBLISHED_DATE, '%Y-%m-%d') AS PUBLISHED_DATEFROM BOOKWHERE PUBLISHED_DATE BETWEEN '20210101' AND '20211231' AND CATEGORY LIKE '์ธ๋ฌธ'ORDER BY PUBLISHED_DATE; โญโญโญYEAR() ํ•จ์ˆ˜๋กœ ํ’€๊ธฐ (์ œ์ผ ๊ฐ„๋‹จํ•œ ์ฝ”๋“œ)SELECT BOOK_ID, DATE_FORMAT(PUBLISHED_DATE, '%Y-%m-%d') AS PUBLISHED_DATEFROM BOOKWHERE YEAR(PUBLISHED_DATE) = 2021 ..
โค๏ธ ๋ฌธ์ œ์„ค๋ช…๋‹ค์Œ์€ ์‹๋‹น ๋ฆฌ๋ทฐ ์‚ฌ์ดํŠธ์˜ ํšŒ์› ์ •๋ณด๋ฅผ ๋‹ด์€ MEMBER_PROFILE ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค. MEMBER_PROFILE ํ…Œ์ด๋ธ”์€ ๋‹ค์Œ๊ณผ ๊ฐ™์œผ๋ฉฐ MEMBER_ID, MEMBER_NAME, TLNO, GENDER, DATE_OF_BIRTH๋Š” ํšŒ์› ID, ํšŒ์› ์ด๋ฆ„, ํšŒ์› ์—ฐ๋ฝ์ฒ˜, ์„ฑ๋ณ„, ์ƒ๋…„์›”์ผ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.   ๐Ÿ’› ๋ฌธ์ œMEMBER_PROFILE ํ…Œ์ด๋ธ”์—์„œ ์ƒ์ผ์ด 3์›” ์ธ ์—ฌ์„ฑ ํšŒ์›์˜ ID, ์ด๋ฆ„, ์„ฑ๋ณ„, ์ƒ๋…„์›”์ผ์„ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ NULL์ธ ๊ฒฝ์šฐ๋Š” ์ถœ๋ ฅ๋Œ€์ƒ์—์„œ ์ œ์™ธ์‹œ์ผœ ์ฃผ์‹œ๊ณ , ๊ฒฐ๊ณผ๋Š” ํšŒ์›ID๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”. ๐Ÿ’š ์ถœ๋ ฅ ์˜ˆ์‹œ โš ๏ธ์ฃผ์˜์‚ฌํ•ญโš ๏ธDATE_OF_BIRTH์˜ ๋ฐ์ดํŠธ ํฌ๋งท์ด ์˜ˆ์‹œ์™€ ๋™์ผํ•ด์•ผ ์ •๋‹ต์ฒ˜๋ฆฌ ๋ฉ๋‹ˆ๋‹ค. ๐Ÿ’œ ํ’€์ด ์ฒซ๋ฒˆ์งธ ์‹œ๋„ ๐Ÿ™…๐Ÿปโ€โ™€..
โœ… List๋ฅผ map์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ด์œ  db๋‚˜ API์—์„œ ๋ฐ์ดํ„ฐ ๋ฐ›์•„์™€์„œ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์†๋„๋‚˜ ํšจ์œจ์„ฑ ์ธก๋ฉด์—์„œ map์ด ๋น ๋ฆ„์ฆ‰, ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋‚˜, ๋น ๋ฅธ ๊ฒ€์ƒ‰์„ ์œ„ํ•ด์„œ ํ•„์š”ํ•จ.์ด๊ฒƒ์ด ๊ฐ€๋Šฅํ•œ ์ด์œ ๋Š” map์€ ํ•ด์‹œ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž‘๋™ํ•˜๋ฉฐ ํ‚ค,๊ฐ’ ์Œ ํ˜•์‹์„ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ.  JSON์ด๋ž‘ ๋น„์Šทํ•œ ํ˜•์‹์ด์ง€๋งŒ ์ž๋ฐ”์˜ map์€ ํ‚ค๊ฐ’ ํƒ€์ž…์„ ์ œ๋„ค๋ฆญ์œผ๋กœ ์ง€์ •ํ•ด ์ฃผ์–ด์•ผ ํ•˜๊ณ Map์ฒ˜๋Ÿผ ๋ช…ํ™•ํ•œ ํƒ€์ž…์„ ์ง€์ •ํ•ด ์ฃผ์–ด์•ผ ํ•จ. [JSON]{ "name": "Alice", "age": 30, "isEmployee": true} [JAVA map]Map person = new HashMap();person.put("name", "Alice");person.put("age", 30);person.put("isEmployee", ..
โœ… ๋ฌธ์ œ๋ฌธ์ž์—ด ํ˜•ํƒœ์˜ 2์ง„์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ 10์ง„์ˆ˜๋กœ ๋ฐ”๊พธ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. โœ… ์ฝ”๋“œimport java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.next(); int base = 1; int result = 0; for (int i = str.length()-1 ; i >= 0; i--) { if(str.charAt(i) == '1'){ result += base; } ..
์ƒ๋‹จ์œผ๋กœ