|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
|
Определить минимальный по сумме уплаченных взяток допустимый порядок получения подписей20.09.2023, 22:46. Показов 4824. Ответов 73
Метки нет (Все метки)
Ломаю голову и не пойму как написать программу вот такого условия: Есть министерство из N чиновников, где N натуральное число. У каждого из чиновников могут быть как подчиненные, так и начальники, причем справедливы правила: подчиненные моего подчиненного мои подчиненные, начальники моего начальника - мои начальники, мой начальник не есть мой подчиненный, у каждого чиновника не более одного непосредственного начальника.
Для того чтобы получить лицензию на вывоз меди необходимо получить подпись 1-ого чиновника - начальника всех чиновников. Проблема осложняется тем, что каждый чиновник, вообще говоря, может потребовать "визы", т.е. подписи некоторых своих непосредственных подчиненных и взятку - известное количество долларов. Для каждого чиновника известен непустой список возможных наборов "виз" и соответствующая каждому набору взятка. Пустой набор означает, что данный чиновник не требует виз в данном случае. Чиновник ставит свою подпись лишь после того, как ему представлены все подписи одного из наборов "виз" и уплачена соответствующая взятка. Необходимо определить и вывести минимальный по сумме уплаченных взяток допустимый порядок получения подписей для лицензии и стоимость. Может кто-нибудь сможет подсказать, может у кого есть идея.
0
|
|
| 20.09.2023, 22:46 | |
|
Ответы с готовыми решениями:
73
Необходимо определить и вывести минимальный по сумме уплаченных взяток допустимый порядок получения подписей для лицензии и стоимость. Определить порядок получения подписей минимизирующий сумму уплаченных взяток
|
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
||
| 22.09.2023, 10:13 | ||
|
Приведите то, что вы сделали и уточните где именно возникла проблема.
0
|
||
|
фрилансер
6510 / 5770 / 1135
Регистрация: 11.10.2019
Сообщений: 15,414
|
||
| 22.09.2023, 10:43 | ||
![]() а по теме - можно сначала сделать прототип на том же стандартном векторе. Когда всё получится, выкидываем заголовок вектора, делаем собственный класс вектора, реализуем необходимый интерфейс
0
|
||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||||||||||||||||
| 22.09.2023, 15:49 | |||||||||||||||||
|
Если принять такой жесткий формат ввода как я привел, можно и обычными дин. массивами обойтись, но при этом ещё нужно заботиться об их освобождении. Добавлено через 3 часа 20 минут Что бы не быть совсем голословным, вот каркас : Полностью готовое дерево и все связи между чиновниками. К формату ввода добавил VN - количество виз в наборе. 1. Написать саму рекурсивную функцию поиска мин суммы, аля пост №2 + проверку мемоизации и ее заполнение. 2. И функцию раскрутки участвующих чиновников, и вывод их снизу вверху, в порядке их подписей на разрешение. Все.
Будут вопросы, задавайте.
1
|
|||||||||||||||||
|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
|||||||||||
| 22.09.2023, 17:18 [ТС] | |||||||||||
|
Это нам про Стек рассказали
0
|
|||||||||||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||||||||||
| 22.09.2023, 19:40 | |||||||||||
|
Итоговый код. Я использовал стандартный динамический массив, стек и очередь.
Их можно заменить на свои. Немного подправив код. Вы можете заметить, что рекурсивная функция поиска мин. сумы, практически не изменилась, от моего первого поста. Так как я не делал полноценное дерево, поэтому так много разнообразных связей. Да и с деревом их не слишком то было бы меньше, такая уж задача. Пусть преподователь поломает голову ![]()
Вывод на предоставленном мной примере входных данных :
p.s. на графе было бы проще.
2
|
|||||||||||
|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
||||||
| 25.09.2023, 13:28 [ТС] | ||||||
|
написала программу, а она не работает (в 40 и 67 ругается на n), не знаю как исправить и правильная она, может кто-нибудь проверит, если знает
0
|
||||||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||||||
| 25.09.2023, 13:40 | |||||||
|
Вам придется воспользоваться "динамическим массивом".
1
|
|||||||
|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
|||||||||||
| 25.09.2023, 16:00 [ТС] | |||||||||||
|
я исправила под динамический массив, это так или нет
еще исправила, но не работает
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
||||||
| 25.09.2023, 23:40 [ТС] | ||||||
|
А как этот Ваш код без дерева сделать, препод говорит граф, а дерево не использовать, моя программа так и не заработала. Уже неделю сижу с программой, не пойму как, кто знает не скажет как? Говорит используй динамический или концевой список, стек или очередь.
0
|
||||||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||||
| 25.09.2023, 23:50 | ||||
|
Я уже писал ранее, что на графе будет, как мне кажется, проще. Но как то, у вас, слишком большой прыжок, от простых связных структур до графов, о которых вы, наверное до этой задачи и не слышали. ![]() Добавлено через 4 минуты
1
|
||||
|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
||||||
| 26.09.2023, 10:14 [ТС] | ||||||
|
Разбиралась с Вашей задачей, что-то мы вектор проходили, но на простом уровне и не в списках. А как эту задачу сделать без вектора пыталась, но не получилось, не работает.
Добавлено через 43 минуты А выводится я поняла общая сумма, а не минимальная или я неправильно разобралась. Потому что по условию минимальная Добавлено через 17 минут А поняла, что мин сумма, но без вектора пробовала, не получается. Как без вектора, кто знает Добавлено через 11 минут убираю std в using std::cin, выдает ошибку; или на что заменить, мы такого не проходили, убираю std, я в начало поставила using namespace std, вот посмотрите
0
|
||||||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||||||||
| 26.09.2023, 12:26 | ||||||||
|
Заменить своим типом с конструктором, деструктором и индексатором.
1
|
||||||||
|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
|
| 26.09.2023, 13:37 [ТС] | |
|
А мемоизация - это для к запоминанию n значений, у нас такого слова не было, я просто не знаю
Добавлено через 2 минуты я уже немного с vector разобралась, а так у нас было template Добавлено через 5 минут Я вставила cin.get(); // press enter to exit, все равно (у меня такого не было) окно работы программы уходит за окно программы, а не остается на переднем плане, как всегда return убрала, тоже так
0
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||||||||||
| 26.09.2023, 13:47 | |||||||||||
|
Там остался '\n' с последнего ввода.
Либо еще раз cin.get(), либо запросите явную команду на выход.
1
|
|||||||||||
|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
|
| 26.09.2023, 13:50 [ТС] | |
|
Извините меня, а что обозначает kpn, ivpn, vn
0
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||
| 26.09.2023, 14:07 | |||
|
vn - количество наборов виз текущего чиновника (kpn) ivpn - порядковый номер чиновника, подпись которого требуется по данной визе Добавлено через 7 минут kpn - это порядковые номера подчиненных данного чиновника.
1
|
|||
|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
|
| 26.09.2023, 14:10 [ТС] | |
|
а что такое - h
0
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||
| 26.09.2023, 14:21 | |||
n векторов, подчиненных.Или добавить эти данные в тип Clerk. Но переписывать придется много. Добавлено через 1 минуту
1
|
|||
|
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 140
|
|
| 26.09.2023, 15:08 [ТС] | |
|
Ввожу ваши данные, а у меня выходит ошибка, и почему сначала 0, это же количество чиновников? Почему дважды повторяется про порядковый номер чиновников. Непонятно.
0
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||
| 26.09.2023, 15:14 | ||
|
0 - это просто идентификатор
Я же приводил формат и пример ввода. Добавлено через 2 минуты Вы ввели данные о чиновние : 1 2 1 1 - его порядковый номер (так как я для простоты начал отсчет с 0, то больше подходит ID), 2 - количество подчиненных, 1 - количество наборов виз
0
|
||
| 26.09.2023, 15:14 | |
|
Определить максимально допустимый ток по медному электропроводу Определить допустимый угол закручивания стального вала на сколько времени хватит денег в случае получения наследства в сумме при указанных расходах
Минимальный путь для получения максимальной суммы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|
|
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки.
Добавлены следующие реквизиты типа Булево:
- Буквы;
- Цифры;
- Символы.
Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
|
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей.
Самым главным критерием для. . .
|
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store.
И так:
1. Скачиваем с. . .
|
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге).
Задача:
Программно добавить префикс в нумерацию документов.
Решение:
В модуле объекта. . .
|