Решите задачу, плз.У вас есть две кучи камней. Первая из них содержит x камней, вторая -...

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

Решите задачу, плз.

У вас есть две кучи камней. Первая из них содержит x камней, вторая - y. За один раз мальчик может забрать из любой кучки один камень и положить его в другую кучу. Вася хочет сделать так, чтобы хотя бы в одной куче осталось ровно z камней. Составьте алгоритм, который определяет, может ли он достичь поставленной цели, и если да, то какое наименьшее количество переложений ему знадободиться для этого.

Нужен код на любом из этих языков: python, c, c++, pascal


Информатика (15 баллов) | 34 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Var
  x, y, z: integer;

begin
  writeln('Веедите значения x,y,z');
  readln(x, y, z);
  if z>(x+y) then
    writeln('Решения нет')
  else if z=min(x,y) then
    writeln('Делать нчего не нужно')
    else
      writeln('Потребуется шагов: ', min(x, y)-z)
end.

(142k баллов)
0 голосов
var
  x, y, z: integer;

begin
  readln(x, y, z);
  if (x + y < z) then
    writeln('Не смогёт')
  else
  begin
    write('Сможет, в ');
    if (x < y) then
      write(x - z)
    else
      write(y - z);
    writeln(' шаг(а)(ов)');
  end;
end.
(16.9k баллов)