Mark tinggal di negara kecil yang dihuni oleh orang-orang yang cenderung terlalu memikirkan banyak hal. Suatu hari, raja negara memutuskan untuk mendesain ulang mata uang negara untuk membuat perubahan memberikan lebih efisien. Raja ingin meminimalkan jumlah koin yang diperlukan untuk membayar jumlah yang tepat hingga (tetapi tidak termasuk) jumlah tagihan kertas terkecil.
Misalkan unit mata uang terkecil adalah Koin. Tagihan kertas terkecil di kerajaan bernilai Koin. Raja memutuskan bahwa seharusnya tidak ada lebih dari denominasi koin yang berbeda yang beredar. Masalahnya, kemudian, adalah untuk menemukan -set bilangan bulat dari yang meminimalkan tunduk pada .
Misalnya, ambil USD standar dan denominasi koinnya dari . Di sini, tagihan kertas terkecil bernilai 100 dari koin terkecil. Dibutuhkan 4 koin untuk menghasilkan 46 sen menggunakan mata uang ini; kami memiliki . Namun, jika kami memiliki denominasi koin , hanya dibutuhkan 3 koin: . Manakah dari set denominasi ini yang meminimalkan jumlah koin rata-rata untuk menghasilkan jumlah hingga dan termasuk 99 sen?
Lebih umum, mengingat dan , bagaimana mungkin secara algoritmik menentukan set optimal? Jelas, seseorang dapat menghitung semua sub-set layak- dan menghitung jumlah rata-rata koin yang diperlukan untuk membuat jumlah dari 1 hingga , melacak yang optimal sepanjang jalan. Karena ada sekitar subset (tidak semuanya layak, tetapi masih), ini tidak akan menjadi sangat efisien. Bisakah Anda melakukan lebih baik dari itu?