그리디(Greedy) 알고리즘
정보관리기술사 제108회 3교시 20번 문항으로, 과목은 SW공학/프로젝트관리입니다. ‘그리디 알고리즘’ 키워드는 정보관리기술사 기출 2문항에 나왔습니다.
원문 문제
정보관리기술사 제108회 20번. 그리디(Greedy) 알고리즘
- 가. 지폐 1000원을 받고 동전으로 770원을 돌려 줄 때 최소 동전수를 찾는 그리디 알고리즘을 설명하시오. (단, 동전의 액면은 500원, 100원, 50원, 10원임)
- 나. 위 알고리즘을 C 또는 Java 언어로 구현하시오.
핵심 키워드
- 그리디 알고리즘
- 최소 동전 문제
- 최적 부분 구조
- 선택 기준
- 알고리즘 구현
고득점 가이드 — 1. 개요
그리디 알고리즘은 각 단계에서 현재 시점의 최적해를 선택하고 이전 선택을 번복하지 않는 단순한 의사 결정 전략으로, 최적 부분 구조와 그리디 선택 속성이 성립할 때 전역 최적을 보장한다. 동적 계획법보다 상태 공간 탐색 비용이 작아 구현이 단순하고 시간 복잡도가 낮지만 모든 문제에 적용 가능하지는 않다. 거스름돈 문제는 동전 액면이 배수 관계 (500·100·50·10) 를 이루는 한국 화폐 체계에서 큰 액면 우선 선택이 항상 최소 동전 수를 보장하므로 그리디 적용에 적합한 대표 사례다. 770원 반환 절차는 [표 1] 참조.
출제 이력
- 그리디 알고리즘기출 2문항
- 최소 동전 문제기출 1문항
- 최적 부분 구조기출 1문항
- 선택 기준기출 1문항
- 알고리즘 구현기출 1문항
같은 과목 문항
- 제108회 4번테스트 드라이버(Test Driver)1교시무료
- 제108회 5번소프트웨어 원격지 개발의 필요성과 문제점1교시무료
- 제108회 14번Java 언어의 추상 클래스(Abstract Class)와 인터페이스(Interface)2교시
- 제108회 16번소프트웨어 안전성 분석 방법인 FTA(Fault Tree Analysis), FMEA(Failure Modes and Effects Analysis), HAZOP(Hazard and Operability Study) 비교2교시
- 제108회 26번상태 다이어그램(State Diagram) 작성4교시
- 제108회 29번B 전자 SCM(Supply Chain Management) 구축 프로젝트 요구사항에 따른 Statement Of Work(SOW)와 Gold Plating 방지 방안4교시