В многопользовательской игре Agar.io игроки управляют бактериями. У каждой бактерии есть размер — целое положительное число. Если встречаются две бактерии разного размера, то бактерия большего размера поглощает меньшую бактерию. При этом меньшая бактерия исчезает, а размер большей бактерии увеличивается на размер меньшей бактерии. Если встречаются две бактерии равного размера, то ничего не происходит. Побеждает игрок, чья бактерия останется на игровом поле одна.
В игре участвуют N игроков, вам даны размеры их бактерий. Определите, какие из игроков имеют возможность выиграть в этой игре.
Входные данные
Программа получает на вход целое число N, 1 ≤ N ≤ 105 — количество игроков. Следующие N строк содержат по одному числу ai —размеры бактерий, 1 ≤ ai ≤ 109. Числа ai заданы в порядке неубывания.
Выходные данные
Программа должна вывести N чисел равных «0» или «1», по одному числу в строке. Если i-е число равно 0, то это означает, что i-й игрок (размер бактерии которого первоначально был равен ai) ни при каких обстоятельствах не может выиграть в этой игре. Если i-е число равно 1, то это означает, что i-й игрок имеет возможность выиграть в этой игре.
Система оценивания
Паскаль
2. P=a+b, S=1/2*a*b, где a и b - данные катеты
3. Пусть даны координаты трех вершин треугольника A(x1;y1), B(x2;y2), C(x3;y3).
Расстояние между двумя точками вычисляется по формуле
Тогда периметр треугольника можно вычислить по формуле:
P=sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2).
Площадь треугольника по формуле Герона вычисляется по формуле:
, где -полу периметр треугольника.
S=sqrt((sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2)/2*(sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2)/2-sqrt((x2-x1)^2+(y2-y1)^2))*(sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2)/2-+sqrt((x3-x2)^2+(y3-y2)^2))*(sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2)/2-sqrt((x3-x1)^2+(y3-y1)^2))
4. Среднее геометрическое трех чисел вычисляется по формуле
или
(a*b*c)^1/3
begin
var a,b,c:integer;
Write('Введите три натуральных числа: '); Read(a,b,c);
var s:=a+b+c;
var k:=Trunc(sqrt(s));
if k*k=s then Writeln('Сумма чисел - квадрат ',k)
else Writeln('Сумма чисел не является квадратом целого')
end.
Тестовое решение
Введите три натуральных числа: 13 4 8
Сумма чисел - квадрат 5
// PascalABC.NET 3.1, сборка 1230 от 27.04.2016 - №2
begin
var a,b,c:integer;
Write('Введите три натуральных числа: '); Read(a,b,c);
var s:=power(a*b*c,1/3);
if s=int(s) then Writeln('Среднее геометрическое - целое число')
else Writeln('Среднее геометрическое - нецелое число')
end.
Тестовое решение
Введите три натуральных числа: 16 8 15
Среднее геометрическое - нецелое число