2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Уплатить единственным способом
Сообщение29.09.2016, 01:21 
Аватара пользователя


01/12/11

8634
В 80-е годы в СССР имелись в обращении монеты в 1, 2, 3, 5, 10, 15, 20, 50 копеек, а также монета в 1 рубль.
Следовательно, существовали денежные суммы, которые можно было лишь единственным способом уплатить монетами, среди которых нет двух одинаковых.
Скучным и нудным перебором мне удалось найти несколько таких сумм. Это 1, 2, 4, 7, 9, 12, 14, 42, 44, 47, 49, 57, 59, 62, 64, 92, 94, 97 и 99 копеек.

Можно ли обойтись без перебора? И как найти все требуемые суммы?
Пожалуйста, помогите решить!
Заранее спасибо!

 Профиль  
                  
 
 Re: Уплатить единственным способом
Сообщение29.09.2016, 18:21 
Заслуженный участник


10/01/16
2318
А это не есть, случайно, ужасная Задача про укладку рюкзака (которая тем и ужасна, что нет для нее хороших алгоритмов)?

 Профиль  
                  
 
 Re: Уплатить единственным способом
Сообщение29.09.2016, 18:43 
Заслуженный участник
Аватара пользователя


16/07/14
9253
Цюрих
Это чуть сложнее, чем рюкзак - за счет требования уникальности: сведение $3SAT$ к $SUBSETSUM$ сохраняет число решений (и его можно сделать таким, чтобы все веса были различны), так что эта задача эквивалентна $UNIQUE-SAT$, которая $NP$ и $coNP$ трудна.

Решается той же стандартной динамикой, что и рюкзак: считаем функцию $f(n, m)$ - число способов получить сумму $n$, используя первые $m$ монет; $f(n, -1) = \delta_{0, n}, f(n, m + 1) = f(n, m) + f(n - p_{m + 1}, m)$ (при этом достаточно помнить только три варианта значения: $0, 1, >1$).

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group