분류 전체보기(638)
-
그리디 - 5. 그리디 알고리즘 vs 다른 알고리즘
📌 5. 그리디 알고리즘 vs 다른 알고리즘✅ 학습 목표이번 단원에서는 그리디 알고리즘과 다이나믹 프로그래밍(DP)의 차이점을 학습하고, 그리디 알고리즘이 항상 최적해를 보장하지 않는 경우를 이해합니다.그리디 알고리즘이 최적해를 항상 보장하지 않는다는 점 이해다이나믹 프로그래밍(DP)과 비교하여 어떤 경우 DP가 필요한지 학습그리디 알고리즘이 적용되지 않는 문제 유형을 파악하는 능력 기르기✅ 학습 내용1️⃣ 그리디 알고리즘 vs 다이나믹 프로그래밍(DP) 알고리즘 방식 장점 단점그리디(Greedy)현재 단계에서 가장 최선의 선택을 반복빠르고 구현이 간단함항상 최적해를 보장하지 않음다이나믹 프로그래밍(DP)모든 경우를 고려하여 최적의 해를 구함최적해를 보장함시간과 메모리 사용량이 큼📌 핵심 차이점그..
2025.02.25 -
그리디 - 4. 그리디 알고리즘 심화 문제
📌 4. 그리디 알고리즘 심화 문제✅ 학습 목표이번 단원에서는 더 복잡한 그리디 문제를 해결하면서 사고력을 확장하고, 그리디 알고리즘이 항상 최적해를 보장하는 것은 아니라는 점을 이해합니다.복잡한 그리디 문제를 해결하면서 문제 해결 능력 향상그리디 알고리즘이 적용되지 않는 경우를 판단하는 능력 기르기효율적인 문제 해결 전략을 연습하고 다양한 응용 문제 학습✅ 심화 문제 예제1️⃣ 숫자 카드 게임여러 개의 숫자 카드가 있으며, 한 줄씩 선택하여 가장 높은 숫자를 찾아야 합니다.단, 각 행에서 가장 작은 숫자 중에서 가장 큰 값을 선택해야 합니다.문제 해결 방법 (그리디 알고리즘)각 행(row)에서 가장 작은 숫자를 선택.그 중에서 가장 큰 숫자를 선택.📌 핵심 원리매 순간 각 행의 최솟값을 선택하여 비..
2025.02.25 -
그리디 - 3. 다양한 그리디 문제 연습
📌 3. 다양한 그리디 문제 연습✅ 학습 목표이번 단원에서는 다양한 유형의 그리디 알고리즘 문제를 연습하면서 문제 해결 능력을 향상하고, 논리를 정리하는 연습을 진행합니다.그리디 알고리즘이 다양한 문제에 적용되는 방식 이해문제를 해결하는 과정에서 논리를 정리하고 최적의 선택을 하는 연습그리디 알고리즘이 적용 가능한 문제를 판단하는 능력 기르기✅ 연습 문제1️⃣ 회의실 배정 문제여러 개의 회의가 있고, 한 개의 회의실에서 진행해야 합니다.회의 시간이 겹치지 않도록 최대한 많은 회의를 배정하려면 어떻게 해야 할까요?문제 해결 방법 (그리디 알고리즘)회의를 빨리 끝낼수록 다음 회의를 배정할 수 있는 기회가 많아짐.따라서, 종료 시간이 가장 빠른 회의부터 선택하면 가장 많은 회의를 배정할 수 있음.예제회의 번..
2025.02.25 -
그리디 - 2. 기본적인 그리디 알고리즘 구현
📌 2. 기본적인 그리디 알고리즘 구현✅ 학습 목표이 단원에서는 그리디 알고리즘을 C언어로 구현하는 방법을 배우고, 간단한 문제를 해결하면서 그리디 알고리즘의 개념을 이해하는 것이 목표입니다.그리디 알고리즘을 C언어로 직접 구현하는 방법 학습간단한 문제를 해결하면서 그리디 개념 익히기거스름돈 문제를 통해 그리디 알고리즘의 적용 방식 이해✅ 학습 내용1. 동전 거스름돈 문제그리디 알고리즘의 대표적인 예제 중 하나인 거스름돈 문제를 다룹니다.이 문제에서는 최소한의 동전 개수로 거스름돈을 줄 수 있도록 해결합니다.🔹 문제 설명손님에게 거스름돈 1260원을 줘야 합니다.사용할 수 있는 동전은 500원, 100원, 50원, 10원 입니다.거스름돈을 줄 때 최소한의 동전 개수를 구하는 프로그램을 작성하세요.✅ ..
2025.02.25 -
그리디 - 1. 그리디 알고리즘 개요
📌 1. 그리디 알고리즘 개요✅ 학습 목표이 단원에서는 그리디 알고리즘(Greedy Algorithm)이 무엇인지 배우고, 언제 사용할 수 있는지를 학습합니다.학습을 마치면 다음 개념을 이해할 수 있습니다.알고리즘이란 무엇인가?알고리즘의 정의와 중요성을 이해합니다.그리디 알고리즘의 개념과 특징그리디 알고리즘이 무엇이며, 어떤 방식으로 동작하는지 알아봅니다.그리디 알고리즘이 사용될 수 있는 조건그리디 알고리즘이 적용 가능한 문제의 특징을 학습합니다.✅ 학습 내용1. 알고리즘이란?알고리즘(Algorithm)은 어떤 문제를 해결하기 위한 절차나 방법을 의미합니다.즉, 특정한 문제를 해결하는 데 필요한 명령어들의 집합입니다.🔹 알고리즘의 핵심 요소입력(Input): 문제 해결을 위해 주어진 값출력(Outpu..
2025.02.25 -
C언어 초급 - 14장: 예제 프로젝트 및 실습 (14.3 메모장 프로그램)
14.3 메모장 프로그램동적 메모리 할당과 파일 입출력을 활용하여 메모장 기능을 구현합니다.✅ 프로그램 주요 기능메모 입력 후 파일에 저장파일에 저장된 메모 불러오기기존 메모에 내용 추가메모 삭제 (파일 초기화)동적 메모리 할당을 사용하여 메모 크기 제한 없음1. 동적 메모리 할당을 활용한 메모 저장 기능메모는 길이가 정해져 있지 않기 때문에, 동적 메모리 할당(malloc())을 사용하여 메모 크기를 유동적으로 조절합니다.📌 메모 입력 후 파일에 저장하는 기능#include #include #define FILE_NAME "memo.txt"// 메모 입력 및 파일 저장void saveMemo() { FILE *fp = fopen(FILE_NAME, "w"); // 새로 작성 모드("w") ..
2025.02.25