Предмет: Информатика, автор: newemail1334mz


Ограничение времени 1 секунда
Ограничение памяти 64Mb
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt
По саванне гуляют страусы и жирафы. У них вместе a глаз и b ног. Определите, сколько страусов и сколько жирафов гуляет по саванне.

Гарантируется, что у каждого животного два глаза, у каждого страуса две, а у каждого жирафа –– четыре ноги.

Формат ввода
В первой строке записано одно целое число a –– количество глаз у животных (1 ≤ a ≤ 1012).

Во второй строке записано одно целое число b –– количество ног у животных (1 ≤ b ≤ 1012).

Формат вывода
Два целых числа через пробел – количество страусов и количество жирафов.

Если определить количество животных нельзя, то нужно вывести через пробел -1 и -1.

Ответы

Автор ответа: BobbyFresnel
1

var

 a, b, g, s: integer;

begin

 readln(a, b);

 if a mod 2 = 0 then

 begin

   if (b - a) mod 2 = 0 then

   begin

     g := (b - a) div 2;

     s := a div 2 - g;

     write(s, ' ', g);

   end

   else

     write('-1 -1');

 end

 else

   write('-1 -1');

end.

Объяснение:

Обозначим количество страусов через s, количество жирафов через g.

Тогда 2s + 2g = a, 2s + 4g = b.

Вычитая из второго уравнения первое, получим 2g = b - a,

откуда g = (b - a) / 2, при этом (b - a) должно быть кратно 2.

Теперь найдем из первого уравнения s = a / 2 - g, при этом a должно быть кратным 2.

Похожие вопросы