Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
Заблокирован

Монеты 1, 2, 3

23.02.2023, 13:07. Показов 1497. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В центральном банке Байтландии скопилось очень много монет достоинством 1, 2 и 3 байткоина. В связи с этим, главному банкиру часто нужно решать следующую задачу: можно ли выплатить сумму в s
байткоинов, используя ровно n
монет достоинством 1, 2 или 3?

Помогите главному банкиру написать программу, которая решала бы эту задачу.
===============
Входные данные:
Первая строка содержит число n
, вторая строка содержит число s
(1≤n,s≤1000
).
===============
Выходные данные:
Если решение существует, выведите строку «Yes», а в следующей строке — последовательность из n
чисел, каждое из которых равно 1, 2 или 3, и сумма которых равна s
. Если решений несколько, выведите любое.

Если решения не существует, выведите строку «No».
===============
Примеры:
1) Входные данные:
5
10
выходные данные:
Yes
1 3 2 1 3
---------------------
2) Входные данные:
3
15
выходные данные:
No
---------------------
3) Входные данные:
10
8
выходные данные:
No
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.02.2023, 13:07
Ответы с готовыми решениями:

Монеты
У вас есть неограниченное количество монет с номиналами 1,2,…,n. Вы хотите выбрать некоторый набор монет имеющий суммарную стоимость S. ...

Монеты из Дар-Эс-Салам алейкум дар эс салам саламалейкум
У вас есть неограниченное количество монет с номиналами 1,2,…,n. Вы хотите выбрать некоторый набор монет имеющий суммарную стоимость S. ...

Монеты
код: a = int(input()) num = int(input()) chislo = num % 10 chislo_too = num - chislo ten = chislo_too // 10 five = 0 one =...

1
814 / 422 / 169
Регистрация: 08.02.2013
Сообщений: 711
23.02.2023, 15:30
Лучший ответ Сообщение было отмечено Pythonistj как решение

Решение

Pythonistj, если a и b - число монет в 3 и 2 рубля, то в 1 рубль - (n-a-b) штук. Получим условие на нужное число рублей: s = 3a+2b+(n-a-b), т.е. диофантово уравнение относительно a и b: 2a+b=s-n. Его решения: a(k)=k, b(k)=s-n-2k (k-любое целое число). Остаётся подобрать любое k (если это возможно), чтобы всех монет было неотрицательное число
Python
1
2
3
4
5
n, s = 5, 10
k = max(s-2*n, 0)
answer = 'NO ' if k > (s-n) // 2 else \
    'YES\n' + '3 '*k + '2 '*(s-n-2*k) + '1 '*(2*n-s+k)
print(answer[:-1])
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.02.2023, 15:30
Помогаю со студенческими работами здесь

Монеты
На столе лежат N монеток. Некоторые из них лежат вверх решкой, а некоторые – гербом. Определите минимальное число монеток, которые нужно...

Юбилейные монеты
У Петра скопилась горка юбилейных монет, среди которых попадаются дубликаты. Монеты попадаются разных номиналов и с изображениями разных...

Равномерно распределить монеты в N мешков
Человек вбивает в программу число(N) мешков, и количество монет в каждом из них. Нужно написать программу, которая разобьет все монеты в...

Программа для определения года выпуска монеты
Ребят необходима программа которая будет определять,год выпуска монеты.Если есть у кого такая программа или мысли по этому поводу,напишите...

Нужно разобраться с программой по динамическому программированиию про кузнечика и монеты
Помогите пожалуйста разобраться. Задание: Ограничение по времени, сек 2 Ограничение по памяти, мегабайт 64 Кузнечик прыгает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru