function Geron(ar: array of real): real;
begin
var (a, b, c) := ar;
if (a + b > c) and (a + c > b) and (b + c > a) then begin
var p := (a + b + c) / 2;
Result := Sqrt(p * (p - a) * (p - b) * (p - c))
end
else
Result := 0
end;
begin
var a := ReadArrReal(4);
var s := a.Combinations(3).Select(t -> Geron(t)).Max;
if s > 0 then
s.Print
else
Print('Таких треугольников нет')
end.
Сначала запишем выражение в виде степеней двойки:
2^16096 - 2^3210 + 2^1024 - 2^7 + 2
Далее последовательно запишем представление числа по действиям:
1) 2^16096 = (в позиции 16096)10000...0
2^3210 = (в позиции 3210)10000...0
При их разности получится:
(16095)111111...111(3210)000...0
2) Прибавляем 2^1024 и получается (16095)111111...111(3210)000...01(1024)00
3) (16095)111111...111(3210)000...01(1023)11(7)0000000
4) (16095)111111...111(3210)000...01(1023)11(7)0000010
Вычисляем кол-о 1: 16095 - 3210 + 1 + 1023 - 7 + 1 + 1 = 13904
Задачка простая, недавно здесь подобную решал. Чтобы её решить, нужно знать несколько базовых положений.
1. Для отображения цветовой гаммы, как правило, исользуется 3 цвета(красный, зелёный, синий).
2. Если для цвета выделено n бит, он может принимать 2^n оттенков. (это чистая математика(комбинаторика)).
3. Как следствие, макс количество цветов в палитре 2^n*2^n*2^n = 2^(3n)
Теперь можно решать задачу.
Пусть под цвет выделено n бит.
Так как всего цветов 3, на один пиксел будет 3*n бит, Следовательно, общий объем рисунка будет
1024 * 512 *( 3*n) = 512 K *(3*n) = (1.5*n)Mбита (По определению 2^10 = 1024 = 1K) .
Вот, в принципе, и всё!
Но Дальше БОЛЬШИЕ сложности, так как не понятно, что написано в условии, что такое Мб - это мегаБИТ или МегаБАЙТ, поэтому придётся рассматривать 2 случая
1. МегаБИТ.
(1.5*n) = 1.5
n=1, то есть под цвет выделен 1 бит.
Макс количество цветов в палитре
2^(3n) = 2^3 = 8.
Да! всего 8 оттенков.
2. МегаБАЙТ, вспомним, что байт=8бит, получим
(1.5*n) = 1.5 *8,
n=8, то есть под цвет выделен целый байт(8 бит)
Макс количество цветов в палитре
2^(3n)= 2^24= 16777216.
Вот и всё.
Да, в реальности, в настоящее время, как правило, под цвет выделено ОДИН БАЙТ, то есть случай 2 полностью соответствует принятому в настоящее время стандарту де-факто и в пикселе 3 байта.
Объясню идею, с кодом я думаю ты сам справишься.
Воспользуемся теоремой Герона:
То есть требуется только перебрать 4 варианта:
a, b, c
a, b, d
a, c, d
b, c, d
Вычислить площадь для каждого и найти максимум из них.