Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.03.2019, 16:40   #1
niggainsoul
Пользователь
 
Регистрация: 25.03.2019
Сообщений: 10
По умолчанию Задача С++ "Треугольная комната"

Пусть комната представляет собой треугольник ABC. Даны (вводятся 4 числа): общее количество стульев n, количество стульев nAB, которое должно стоять у стены AB, количество стульев nBC (у стены BC), количество стульев nAC (у стены AC). Необходимо найти соответствующую расстановку стульев или установить, что ее не существует (вывести NO). При этом стулья можно ставить только в углы комнаты и вдоль стен, в центр комнаты стулья ставить нельзя. В любой из углов можно поставить произвольное количество стульев.

Если стулья указанным способом расставить можно, то вывести в первой строке YES, а во второй - 6 целых неотрицательных чисел: kA, kAB, kB, kBC, kC, kAC - количество стульев, которые необходимо поставить в угол A, вдоль стены AB, в угол B, вдоль стены BC, в угол C и вдоль стены AC.

Пример:
Нужно расставить по периметру треугольной комнаты 3 стула так, чтобы у каждой стены стояло по 2.
Ее решение - поставить по стулу в каждый из углов комнаты.

Т.е. вводим: 3 2 2 2
Выводим: YES
1 0 1 0 1 0
niggainsoul вне форума Ответить с цитированием
Старый 26.03.2019, 17:03   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Код:
число стульев в одном углу от 0 до максимального (подумав эту величину можно и уменьшить)
число стульев в другом углу 0..n
число стульев в третьем углу 0..n
а теперь считаем и проверяем
  число стульев у первой стены И НЕ в углах(противоположной первому углу) ?
  не удалось, начнем новую проверку(с новыми данными)
  число стульев у второй стены ?
  не удалось, начнем новую проверку
  число стульев у третьей стены ?
  не удалось, начнем новую проверку
  стулья размещены, общее число совпало с требуемым ?
  не совпало начнем новую проверку
  если все получилось выводим и заканчиваем или продолжаем
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Убрать папки "Pictures", "Music", "Видео", "Downloads" из "МОЙ КОМПЬЮТЕР" Бахтиёр1916 Windows 1 05.04.2017 12:53
Нужно пояснить/прокомментировать код программы, или коды функций "Добавить" "Удалить" "Обновить(редактировать" "Поиск" "Период") ZIRASS PHP 4 15.06.2016 14:23
Описать класса "комната" Tase4ka Помощь студентам 3 17.02.2011 21:58