C++ На завод! У Пети есть X граммов краски, а у Васи — Y граммов краски. Одного грамма краски хватает, чтобы покрасить плитку 1×1. На заводе есть неограниченное количество квадратных плиток любых размеров. Петя выберет максимальную плитку, на которую у него хватит краски. Вася поступит аналогично. Таня работает в плановом отделе, и в её интересах сделать так, чтобы суммарно было потрачено как можно больше краски. Поэтому Таня интересуется: а что если Петя отдаст всю свою краску Васе? Получится ли тогда потратить больше краски или нет?
В данной задаче запрещено использовать функцию sqrt, а также операцию возведения в степень.
Входные данные
В двух строках входных данных содержатся натуральные числа x и y — количество краски у Пети и Васи соответственно.
Все числа не превышают 1000.
Выходные данные
Если выгоднее будет отдать всю краску Васе, то выведите на экран "Petya gives paint to Vasya".
Если выгоднее оставить краску у Пети, то выведите на экран "Petya leaves paint to himself".
Если расход краски в обоих случаях одинаков, то выведите "Equal".
Пояснения к тестам
В первом тесте, если Петя оставит краску у себя, то Петя и Вася смогут закрасить по плитке стороной 3 метра и потратить 18 граммов краски. Если же Петя отдаст краску Васе, то Вася закрасит плитку стороной 4 метра и потратит 16 граммов краски.
Во втором тесте независимо от стратегии Пети получится потратить 25 граммов краски.
В третьем тесте Пете выгоднее отдать краску Васе, в этом случае получится потратить 16 граммов краски (вместо 13 в противном случае).
Примеры
Ввод
Вывод
10
10
Petya leaves paint to himself
10
20
Equal
10
7
Petya gives paint to Vasya
uses crt;
Var mas:array[1..1000, 1..1000] of integer;
N,M,i,j,k:integer;
Begin
Writeln('Введите размер матрицы N*M');
Write('N = ');
readln(N);
Write('M = ');
readln(M);
if (M>1000) or (N>1000) or (M<1) or (N<1)
then
Writeln('Ошибка, указанные значения выходят за пределы матрицы') else
Begin
Writeln('Введите элементы матрицы');
k:=0;
for i:=1 to N do
for j:=1 to M do
Begin
readln(mas[i,j]);
if (mas[i,j] mod 2 = 0) then k:=k+1;
end;
Writeln();
Writeln('Исходная матрица');
for i:=1 to N do
Begin
for j:=1 to M do
Begin
Write(mas[i,j], ' ')
end;
Writeln();
end;
Writeln();
Writeln('Количество четных элементов = ',k);
end;
readln;
end.
Var a1,a2,a3,a4,t1,t2,t3,p,d,vp,b: Integer;
begin
writeln ('программа вычисляет норму для данного ученика');
writeln ('введи массу учебника 1');readln (a1);
writeln ('введи массу учебника 2');readln (a2);
writeln ('введи массу учебника 3');readln (a3);
writeln ('введи массу тетради 1');readln (t1);
writeln ('введи массу тетради 2');readln (t2);
writeln ('введи массу тетради 3');readln (t3);
writeln ('введи массу пенала');readln (p);
writeln ('введи массу дневника');readln (d);
writeln ('введи массу портфеля');readln(vp);
b:=a1+a2+a3+a4+t1+t2+t3+p+d+vp;writeln ('общая масса портфеля= ' b);
if (b<=5) then writeln ('норма') else writeln ('ненорма');
readln;
end.