ewok 2023. 2. 3. 10:00

그리디 알고리즘(탐욕법)

현재 상황에서 지금 당장 좋은 것만 고르는 방법

 

  • 일반적인 그리디 알고리즘은 문제를 풀기 위한 최소한의 아이디어를 떠올릴 수 있는 능력을 요구함
  • 그리디 해법은 정당성 분석이 중요함
  • 단순히 가장 좋아 보이는 것을 반복적으로 선택해도 최적의 해를 구할수 있는지 검토

 

 

 

그리디

 

  • 일반적인 상황에서 그리디 알고리즘은 최적의 해를 보장할 수 없을 때가 많다.
  • 하지만 코딩 테스트에서의 대부분의 그리디 문제는 탐욕법으로 얻은 해가 최적의 해가 되는 상황에서, 이를 추론할 수 있어야 풀리도록 출제된다.

 

 

 

 

코드

더보기
public class Main {

    public static void main(String[] args) {
        int n = 1260;
        int cnt = 0;
        int[] coinTypes = {500, 100, 50, 10};
		
        for (int i = 0; i < 4; i++) {
            int coin = coinTypes[i];
            cnt += n / coin;
            n %= coin;
        }

        System.out.println(cnt);
    }

}