전체 κΈ€

전체 κΈ€

    [Algorithm] BOJ 닀리놓기 - 1010번

    1. 문제 풀이 닀리 λ†“κΈ°λŠ” 일직선 λͺ¨μ–‘μ˜ κ°•μ˜ 동μͺ½κ³Ό μ„œμͺ½μ— 닀리λ₯Ό κ²ΉμΉ˜μ§€ μ•Šκ²Œ 놓을 수 μžˆλŠ” 경우의 수λ₯Ό κ΅¬ν•˜λŠ” λ¬Έμ œμ΄λ‹€. μ„œμͺ½κ³Ό 동μͺ½μ—λŠ” 각 Nκ°œμ™€ M개의 닀리λ₯Ό λ‘˜ 수 μžˆλŠ” 곳이 있고 0 > ca; //경우의 수 long long count = 1; for (int i ..

    [Algorithm] BOJ LCS 2 - 9252번

    1. 문제 풀이 λͺ¨λ‘μ˜ λΆ€λΆ„ μˆ˜μ—΄μ΄ λ˜λŠ” μˆ˜μ—΄ 쀑 κ°€μž₯ κΈ΄ 것을 μ°ΎλŠ” λ¬Έμ œμ΄λ‹€. μ²˜μŒμ—λŠ” μΌμΉ˜ν•˜λŠ” λ¬Έμžμ—΄μ„ μ°Ύμ•„ char 배열에 μ €μž₯ ν•œ λ’€ λ°”λ‘œ 좜λ ₯ν•˜λŠ” λ°©μ‹μœΌλ‘œ 풀어보렀 ν–ˆμ§€λ§Œ κ΅¬ν˜„μ΄ λ³΅μž‘ν•΄μ Έ μ •ν™•νžˆ λ¨Όμ € 수λ₯Ό κ΅¬ν•œ λ’€ κ°€μž₯ κΈ΄ μˆ˜μ—΄μ„ μ°Ύμ•„ μ—­μΆ”μ ν•˜λŠ” λ°©μ‹μœΌλ‘œ ν’€μ—ˆλ‹€... λ¬Έμžμ—΄μ€ μ•ŒνŒŒλ²³ λŒ€λ¬Έμžλ‘œλ§Œ 이루어져 있으며, μ΅œλŒ€ 1000κΈ€μžλ‘œ 이루어져 μžˆλ‹€. μš°μ„  1000자λ₯Ό 담을 수 μžˆλŠ” 이차원배열을 0으둜 μ΄ˆκΈ°ν™” ν•œλ’€ λ¬Έμžκ°€ μΌμΉ˜ν•  μ‹œμ— 이전에 μΌμΉ˜ν•œ κ°œμˆ˜μ— 1을 λ”ν•΄κ°€λŠ” λ°©μ‹μœΌλ‘œ κ΅¬ν˜„ν–ˆλ‹€. μ•„λž˜ ν‘œλ₯Ό 보면 μΌμΉ˜ν•˜λŠ” 문자λ₯Ό λ§Œλ‚˜λ©΄ 이전 인덱슀의 값에 + 1을 ν•˜κ³  result[i][j] = result[i - 1][j - 1] + 1; 뢈일치 ν•˜λ©΄ κ·ΈλŒ€λ‘œ i와 j 쀑 더 큰 값을 λ„£μ–΄ 쀌으둜 κΈ΄ 카운트λ₯Ό..

    [Algorithm] BOJ 동전 1 - 2293번

    1. 문제 풀이 n 가지 μ’…λ₯˜μ˜ λ™μ „μœΌλ‘œ κ·Έ κ°€μΉ˜μ˜ 합이 k원이 될 수 μžˆλŠ” 경우의 수λ₯Ό κ΅¬ν•˜λŠ” λ¬Έμ œμ΄λ‹€. 각각의 동전은 λͺ‡κ°œλΌλ„ μ‚¬μš©ν•  수 μžˆλ‹€. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 으둜 주어진닀. μš°μ„  ν•΄λ‹Ή 값을 λ§Œλ“€ 수 μžˆλŠ” 경우의 μˆ˜λŠ” κ°’μ˜ 배수 μΌλ•Œ 1번. μˆœμ—΄μœΌλ‘œ λ§Œλ“€μ—ˆμ„λ•Œ 두가지 λ™μ „μœΌλ‘œ λ§Œλ“€ 수 μžˆλŠ” 경우의 수 = 이전 λ™μ „μœΌλ‘œ λ§Œλ“€ 수 μžˆλŠ” 경우의 수 + ν˜„μž¬ λ™μ „μœΌλ‘œ λ§Œλ“€ 수 μžˆλŠ” 경우의 수 κ°€ λ˜λŠ”κ²ƒμ΄λ‹€. 이것을 μ ν™”μ‹μœΌλ‘œ μΈλ±μŠ€μ— 기둝해가며 더해가면 ν•΄λ‹Ή λ™μ „λ“€λ‘œ κ°€λŠ₯ν•œ 경우의 수λ₯Ό ꡬ할 수 μžˆλ‹€. 처음 첫 μΈλ±μŠ€μ— 값을 1둜 μ„€μ •ν•˜κ³  κ·Έ λ’€λ₯Ό 0으둜 μ΄ˆκΈ°ν™”ν•΄ 처음 coin의 값이 λ“€μ–΄κ°ˆ λ•Œ 1이 더해지도둝 ν–ˆλ‹€. 2. μ½”λ“œ #include using namespa..

    [Algorithm] BOJ νŒ°λ¦°λ“œλ‘¬? - 10942번

    1. 문제 풀이 νŒ°λ¦°λ“œλ‘¬? λ¬Έμ œλŠ” μžμ—°μˆ˜ N μ•ˆμ—μ„œ Sλ²ˆμ§Έμ™€ E번째 μˆ˜κΉŒμ§€ νŒ°λ¦°λ“œλ‘¬, 곧 거꾸둜 읽어도 μ œλŒ€λ‘œ μ½λŠ” 것과 λ™μΌν•œμ§€ μ•Œμ•„λ‚΄λŠ” λ¬Έμ œμ΄λ‹€. νŒ°λ¦°λ“œλ‘¬μΈ κ²½μš°μ—λŠ” 1, μ•„λ‹Œ κ²½μš°μ—λŠ” 0을 좜λ ₯ν•œλ‹€. μš°μ„  SλΆ€ν„° Eμ‚¬μ΄μ˜ μ°¨λ₯Ό 거리라 λΆ€λ₯΄κ³  S와 E의 μ‚¬μ΄μ˜ κ²°κ³Όλ₯Ό 담을 이차원배열을 N*N 크기둜 μƒμ„±ν–ˆλ‹€. νŽ λ¦°λ“œλ‘¬μ˜ νŒ¨ν„΄μ€ S와 E 보닀 1μ”© 쀄어든 거리가 νŒ°λ¦°λ“œλ‘¬μ΄κ³  S와 Eκ°€ κ°™μœΌλ©΄ νŒ°λ¦°λ“œλ‘¬μ΄ λ˜λŠ” κ·œμΉ™μ„ μ΄μš©ν•΄ ν•˜λ‚˜μ”© 1둜 μ±„μ›Œκ°€λŠ” λ°©μ‹μœΌλ‘œ ν’€μ΄ν•˜μ˜€λ‹€. 거리가 0, 곧 같은 인덱슀 μΌλ•ŒλŠ” 1둜 λͺ¨λ‘ μ΄ˆκΈ°ν™”λ₯Ό ν•˜κ³  거리가 1μΌλ•Œ j , j+1이 κ°™μœΌλ©΄ 1둜 μ„€μ •ν–ˆλ‹€. 거리가 2μ΄μƒμΌλ•ŒλŠ” 거리λ₯Ό j , λŒ€μƒμΈλ±μŠ€λ₯Ό z 둜 while λ¬Έμ„λŒλ €κ°€λ©° z / j + z κ°€ κ°™κ³  κ·Έ μ•ˆμ— 직전 값이 1이..

    [Docker] 🐳 λ„μ»€λž€?

    1. Docker λž€? Docsμ—μ„œ λ§ν•˜λŠ” DockerλŠ” ν΄λΌμš°λ“œ λ˜λŠ” 온-ν”„λ ˆλ―ΈμŠ€λ‘œ 싀행될 수 μžˆλŠ” 이식 κ°€λŠ₯ν•˜κ³  문제λ₯Ό 슀슀둜 ν•΄κ²°ν•  수 μžˆλŠ” μ»¨ν…Œμ΄λ„ˆλ‘œμ„œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ 배포λ₯Ό μžλ™ν™”ν•˜κΈ° μœ„ν•œ μ˜€ν”ˆ μ†ŒμŠ€ ν”„λ‘œμ νŠΈμž…λ‹ˆλ‹€. 라고 μ„€λͺ…ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. μ‰½κ²Œ λ§ν•˜λ©΄ λ„μ»€λŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ»¨ν…Œμ΄λ„ˆ 기반 배포 및 κ³΅μœ ν•˜λŠ” μ˜€ν”ˆ μ†ŒμŠ€ 가상화 ν”Œλž«νΌμž…λ‹ˆλ‹€. λ‹€μ–‘ν•œ ν”„λ‘œκ·Έλž¨, μ‹€ν–‰ν™˜κ²½μ„ μ»¨ν…Œμ΄λ„ˆλ‘œ μΆ”μƒν™”ν•˜κ³  λ™μΌν•œ μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ œκ³΅ν•˜μ—¬ ν”„λ‘œκ·Έλž¨μ˜ 배포 및 관리λ₯Ό λ‹¨μˆœν•˜κ²Œ ν•΄μ€λ‹ˆλ‹€. λ„μ»€λŠ” 2013λ…„ νŒŒμ΄μ½˜μ—μ„œ 처음 μ†Œκ°œλ˜μ–΄ ν˜„μž¬κΉŒμ§€ λ§Žμ€ κΈ°μ—…μ—μ„œ μ‚¬μš©λ˜κ³  μžˆμŠ΅λ‹ˆλ‹€. μ™œ 도컀λ₯Ό μ‚¬μš©ν•˜λŠ”μ§€μ— λŒ€ν•΄ μ•Œμ•„λ³΄κΈ° μœ„ν•΄ λ„μ»€μ˜ μ—¬λŸ¬ κ°œλ…μ— λŒ€ν•΄ μ•Œμ•„λ΄…μ‹œλ‹€. 🐳 μ»¨ν…Œμ΄λ„ˆ(container) λž€? μ»¨ν…Œμ΄λ„ˆλŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λ˜λŠ” μ„œλΉ„μŠ€μ™€ ..

    [Algorithm] DP (Dynamic Programming) : 동적 κ³„νšλ²•

    μ€‘λ³΅λ˜λŠ” 연산을 쀄인닀 μš°μ„  λ‹€μ΄λ‚˜λ―Ή ν”„λ‘œκ·Έλž˜λ°μ˜ λ‹€μ΄λ‚˜λ―Ήμ€ 사싀 간지λ₯Ό μœ„ν•΄ μ‚¬μš©ν•œ μ΄λ¦„μœΌλ‘œ 동적인 μ˜λ―Έμ™€λŠ” 상관이 μ—†λ‹€... λ‹€μ΄λ‚˜λ―Ή ν”„λ‘œκ·Έλž˜λ°μ€ μ•½κ°„ 더 λ©”λͺ¨λ¦¬λ₯Ό μ‚¬μš©ν•˜λ©΄ 연산속도λ₯Ό λΉ„μ•½μ μœΌλ‘œ μ¦κ°€μ‹œν‚¬ 수 μžˆλŠ” λ°©λ²•μœΌλ‘œ 두가지 쑰건을 λ§Œμ‘±ν•  λ•Œ μ‚¬μš©ν•  수 μžˆλ‹€. 1. 큰 문제λ₯Ό μž‘μ€ 문제둜 λ‚˜λˆŒ 수 μžˆλ‹€. 2. μž‘μ€ λ¬Έμ œμ—μ„œ κ΅¬ν•œ 정닡은 그것을 ν¬ν•¨ν•˜λŠ” 큰 λ¬Έμ œμ—μ„œλ„ λ™μΌν•˜λ‹€. 두 쑰건을 λ§Œμ‘±ν•˜λŠ” κ°€μž₯ λŒ€ν‘œμ μΈ μ˜ˆμ‹œλŠ” ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ΄λ‹€. ν”Όλ³΄λ‚˜μΉ˜ μˆ˜μ—΄μ€ 점화식을 가지고 μžˆλ‹€. 이전 2개의 ν•­μ˜ 값에 영ν–₯을 λ°›λŠ”λ‹€λŠ” 점을 μ΄μš©ν•΄ μž¬κ·€ν•¨μˆ˜λ‘œ κ΅¬ν˜„ν•  수 μžˆλ‹€. μ•„λž˜λŠ” 점화식을 μž¬κ·€ν•¨μˆ˜λ‘œ κ΅¬ν˜„ν•œ μ½”λ“œμ΄λ‹€. #include using namespace std; intfibonacci(int n) { if (..

    [42Seoul] ft_server (Docker + LEMP)

    Ft_server μš”μ•½: 이번 ν”„λ‘œμ νŠΈμ˜ κ³Όμ œλŠ” μ‹œμŠ€ν…œ κ΄€λ¦¬μž…λ‹ˆλ‹€. μ—¬λŸ¬λΆ„μ€ 도컀λ₯Ό λ°œκ²¬ν•˜κ³  μ—¬λŸ¬λΆ„μ˜ 첫 번째 μ›Ή μ„œλ²„λ₯Ό ꡬ좕할 κ²ƒμž…λ‹ˆλ‹€. Introduction 이번 μ£Όμ œλŠ” μ—¬λŸ¬λΆ„μ—κ²Œ μ‹œμŠ€ν…œ 관리에 λŒ€ν•΄μ„œ μ†Œκ°œν•˜λ € ν•©λ‹ˆλ‹€. 슀크립트λ₯Ό μ‚¬μš©ν•˜μ—¬ 업무λ₯Ό μžλ™ν™”ν•˜λŠ” 것이 μ€‘μš”ν•˜λ‹€λŠ” 것을 κΉ¨λ‹«κ²Œ 될 κ²ƒμž…λ‹ˆλ‹€. 이λ₯Ό μœ„ν•΄, μ—¬λŸ¬λΆ„μ€ "도컀"λΌλŠ” κΈ°μˆ μ„ λ°œκ²¬ν•˜μ—¬ 그것을 μ™„μ „ν•œ μ›Ή μ„œλ²„λ₯Ό μ„€μΉ˜ν•˜λŠ” 데 μ‚¬μš©ν•  κ²ƒμž…λ‹ˆλ‹€. 이 μ„œλ²„λŠ” μ—¬λŸ¬ μ„œλΉ„μŠ€λ₯Ό μ‹€ν–‰ν•  κ²ƒμž…λ‹ˆλ‹€: Wordpress, phpMyAdmin, 그리고 SQL database. General instructions μ„œλ²„ ꡬ성에 ν•„μš”ν•œ λͺ¨λ“  νŒŒμΌμ„ srcs 폴더 μ•ˆμ— 넣어놔야 ν•©λ‹ˆλ‹€. λ„μ»€νŒŒμΌμ€ μ €μž₯μ†Œμ˜ λ£¨νŠΈμ— μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€. 그것은 μ—¬λŸ¬λΆ„μ˜ μ»¨ν…Œμ΄λ„ˆλ₯Ό λ§Œλ“€ 것..

    [42Seoul] ft_printf - λ‚˜μ˜ printf κ΅¬ν˜„ν•˜κΈ°

    Intorduction 이 ν”„λ‘œμ νŠΈλŠ” κ½€ κ°„λ‹¨ν•©λ‹ˆλ‹€. μ—¬λŸ¬λΆ„μ€ printf ν•¨μˆ˜λ₯Ό λ‹€μ‹œ κ΅¬ν˜„ν•  κ²ƒμž…λ‹ˆλ‹€. ν¬λ§μ»¨λŒ€ μ—¬λŸ¬λΆ„λ“€μ€ cheating의 두렀움 없이 μΆ”ν›„ ν”„λ‘œμ νŠΈμ—μ„œ ft_printfλ₯Ό μž¬μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. Mandatory part Program name libftprintf.a Turn in files *.c, /.c, *.h, /.h, Makefile Makefile all, clean, fclean, re, bonus External functs. malloc, free, write, va_start, va_arg, va_copy, va_end Libft authorized yes Description μ‹€μ œ printf의 λͺ¨λ°© ν•¨μˆ˜μΈ ft_printfκ°€ ν¬ν•¨λœ 라이브러리λ₯Ό μž‘μ„±ν•˜μ‹­μ‹œμ˜€ f..

    [Computer Science] λ©”λͺ¨λ¦¬κ΅¬μ‘° (Memory Structure)

    ν”„λ‘œκ·Έλž¨ μ‹€ν–‰ μˆœμ„œ ν”„λ‘œκ·Έλž¨μ˜ 싀행을 μœ„ν•΄μ„œλŠ” λ¨Όμ € ν”„λ‘œκ·Έλž¨μ΄ λ©”λͺ¨λ¦¬μ— λ‘œλ“œκ°€ λ˜μ–΄ μžˆμ–΄μ•Όν•œλ‹€. ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜λ©΄ os λŠ” λ©”λͺ¨λ¦¬μ— 곡간을 ν• λ‹Ήν•˜κ²Œ λœλ‹€. ν”„λ‘œκ·Έλž¨μ˜ μ‹€ν–‰ μˆœμ„œλŠ” μ•„λž˜μ™€ κ°™λ‹€. λ©”λͺ¨λ¦¬ ꡬ쑰 λ©”λͺ¨λ¦¬ 곡간은 λ‹€μŒκ³Ό 같은 μ˜μ—­μœΌλ‘œ λ‚˜λˆ„μ–΄μ§„λ‹€. 1. μ½”λ“œ(code) μ˜μ—­ 2. 데이터(data) μ˜μ—­ 3. μŠ€νƒ(stack) μ˜μ—­ 4. νž™(heap) μ˜μ—­ 1. μ½”λ“œ(code) μ˜μ—­ λ©”λͺ¨λ¦¬μ˜ μ½”λ“œ(code) μ˜μ—­μ€ μ‹€ν–‰ν•  ν”„λ‘œκ·Έλž¨μ˜ μ½”λ“œκ°€ μ €μž₯λ˜λŠ” μ˜μ—­μœΌλ‘œ ν…μŠ€νŠΈ(code) μ˜μ—­μ΄λΌκ³ λ„ λΆ€λ₯Έλ‹€. CPUλŠ” μ½”λ“œ μ˜μ—­μ— μ €μž₯된 λͺ…λ Ήμ–΄λ₯Ό ν•˜λ‚˜μ”© κ°€μ Έκ°€μ„œ μ²˜λ¦¬ν•˜κ²Œ λœλ‹€. 2. 데이터(data) μ˜μ—­ λ©”λͺ¨λ¦¬μ˜ 데이터(data) μ˜μ—­μ€ ν”„λ‘œκ·Έλž¨μ˜ μ „μ—­ λ³€μˆ˜μ™€ 정적(static) λ³€μˆ˜κ°€ μ €μž₯λ˜λŠ” μ˜μ—­μ΄λ‹€. 데이..

    [Algorithm] 탐색 μ•Œκ³ λ¦¬μ¦˜ DFS/BFS

    DFS (Depth-First-Search) 깊이 μš°μ„  탐색이라고도 λΆ€λ₯΄λ©°, κ·Έλž˜ν”„μ—μ„œ κΉŠμ€ 뢀뢄을 μš°μ„ μ μœΌλ‘œ νƒμƒ‰ν•˜λŠ” μ•Œκ³ λ¦¬μ¦˜ 이닀. DFS의 μž₯점 ν˜„ κ²½λ‘œμƒμ˜ λ…Έλ“œλ₯Ό κΈ°μ–΅ν•˜κΈ° λ•Œλ¬Έμ— 적은 λ©”λͺ¨λ¦¬λ₯Ό μ‚¬μš©ν•œλ‹€. μ°ΎμœΌλ €λŠ” λ…Έλ“œκ°€ κΉŠμ€ 단계에 μžˆλŠ” 경우 BFS 보닀 λΉ λ₯΄κ²Œ 찾을 수 μžˆλ‹€. DFS의 단점 ν•΄κ°€ μ—†λŠ” 경둜λ₯Ό 탐색 ν•  경우 단계가 끝날 λ•ŒκΉŒμ§€ νƒμƒ‰ν•©λ‹ˆλ‹€. νš¨μœ¨μ„±μ„ 높이기 μœ„ν•΄μ„œ 미리 μ§€μ •ν•œ μž„μ˜ κΉŠμ΄κΉŒμ§€λ§Œ νƒμƒ‰ν•˜κ³  ν•΄λ₯Ό λ°œκ²¬ν•˜μ§€ λͺ»ν•˜λ©΄ λΉ μ Έλ‚˜μ™€ λ‹€λ₯Έ 경둜λ₯Ό νƒμƒ‰ν•˜λŠ” 방법을 μ‚¬μš©ν•œλ‹€. DFSλ₯Ό ν†΅ν•΄μ„œ 얻어진 ν•΄κ°€ μ΅œλ‹¨ κ²½λ‘œλΌλŠ” 보μž₯이 μ—†μŠ΅λ‹ˆλ‹€. DFSλŠ” 해에 λ„μ°©ν•˜λ©΄ 탐색을 μ’…λ£Œν•˜κΈ° λ•Œλ¬Έμ΄λ‹€. BFS (Breadth-First-Search) λ„ˆλΉ„ μš°μ„  탐색이라고도 λΆ€λ₯΄λ©° κ°€κΉŒμš΄ λ…Έλ“œλΆ€ν„° νƒμƒ‰ν•˜λŠ” μ•Œ..