import java.util.*;

public class Kolikot {
    public static int ahne(int[] kolikot, int summa) {
        int laskuri = 0;
        for (int i = kolikot.length-1; i >= 0; i--) {
            while (summa >= kolikot[i]) {
                summa -= kolikot[i];
                laskuri++;
            }
        }
        return laskuri;
    }

    public static int paras(int[] kolikot, int summa) {
        int[] tulos = new int[summa+1];
        tulos[0] = 0;
        for (int i = 1; i <= summa; i++) {
            tulos[i] = Integer.MAX_VALUE;
            for (int j = 0; j < kolikot.length; j++) {
                if (i-kolikot[j] < 0) break;
                tulos[i] = Math.min(tulos[i], tulos[i-kolikot[j]]+1);
            }
        }
        return tulos[summa];
    }

    public static boolean toimii(int[] kolikot) {
        Arrays.sort(kolikot);
        int suurin = kolikot[kolikot.length-1];
        for (int i = 1; i <= suurin*2; i++) {
            System.out.println(i + " " + ahne(kolikot, i) + " " + paras(kolikot, i));
            if (ahne(kolikot, i) > paras(kolikot, i)) return false;
        }
        return true;
    }

    public static void main(String[] args) {
        System.out.println(toimii(new int[] {1, 2, 5}));
        System.out.println(toimii(new int[] {1, 3, 4}));
    }
}
