РЕшите задачу плизЕсть белые, синие и красные шарики.Известно, что белых шариков ровно А...

0 голосов
45 просмотров

РЕшите задачу плизЕсть белые, синие и красные шарики.Известно, что белых шариков ровно А штук, синих ровно B и красных ровно С.Каждую секунду последовательно выполняются ровно три операции:1. Пока количество белых шариков больше либо равно Х, Х белых шариков превращаются в один синий;2. Пока количество синих шариков больше либо равно Y, Y синих шариков превращаются в один красный;3. Пока количество красных шариков больше либо равно Z, Z красных шариков превращаются в один белый;В какой-то момент больше нельзя выполнить ни одного действия и процесс прекращается.Вам нужно сказать сколько шариков каждого цвета будет после выполнения последнего возможного действия.Формат вводаВ одной строке вводятся 6 целых неотрицательных чисел A, B, C, X, Y, Z (1 <= A, B, C, X, Y, Z <= 109). Гарантируется, что X + Y + Z >= 4 и когда-нибудь процесс остановится.Формат выводаВ одной строке выведите 3 числа — А, B, C после выполнения последней операции.ПримерВвод2 4 5 2 3 2Вывод1 0 1


Информатика (49 баллов) | 45 просмотров
Дан 1 ответ
0 голосов

program raf105;

var  

 white,blue,red,x,y,z: integer;

 w,b,r: boolean;

begin

writeln('Ввод:');

readln(white, blue, red, x, y, z);

repeat

 w:= false;

 b:= false;

 r:= false;

 if white >= x

   then begin

     white-= x;

     blue+= 1;

   end

   else w:= true;

 if blue >= y

   then begin

     blue-= y;

     red+= 1;

   end

   else b:= true;

 if red >= z

   then begin

     red-= z;

     white+= 1;

   end

   else r:= true;

until w and b and r;

writeln('Вывод:');

writeln(white,' ', blue,' ', red);

end.

PascalABC 3.4.2

(2.1k баллов)