
Вопрос задан 04.07.2019 в 20:12.
Предмет Информатика.
Спрашивает Володичева Дарья.
Петя играет с разноцветными кубиками. У него есть x красных, y зеленых и z синих кубиков. Он ставит
кубики в ряд один за другим так, чтобы цвета соседних кубиков не совпадали. Какое максимальное количество кубиков можно поставить в ряд, с учетом этого условия? Написать программу в паскале. Заранее спасибо.

Ответы на вопрос

Отвечает Ивлева Юлия.
// PascalABC.NET 3.2, сборка 1485 от 15.06.2017
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ReadArrInteger('Кол-во красных, зеленых и синих кубиков:',3);
a.Sort;
var k:=a[0]*3; a[1]-=a[0]; a[2]-=a[0]; // тройки
if a[1]>0 then begin
k+=a[1]*2; a[2]-=a[1]; // пары
end;
if a[2]>0 then k+=1; // последний
Writeln('Максимальное количество в ряду равно ',k)
end.
Пример
Кол-во красных, зеленых и синих кубиков: 8 2 5
Максимальное количество в ряду равно 13
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ReadArrInteger('Кол-во красных, зеленых и синих кубиков:',3);
a.Sort;
var k:=a[0]*3; a[1]-=a[0]; a[2]-=a[0]; // тройки
if a[1]>0 then begin
k+=a[1]*2; a[2]-=a[1]; // пары
end;
if a[2]>0 then k+=1; // последний
Writeln('Максимальное количество в ряду равно ',k)
end.
Пример
Кол-во красных, зеленых и синих кубиков: 8 2 5
Максимальное количество в ряду равно 13


Топ вопросов за вчера в категории Информатика

Информатика 562

Информатика 404

Информатика 31

Информатика 76

Информатика 16

Информатика 41

Информатика 31
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili