Дана прямоугольная клеточная доска размера m ×n клеток. также дано неограниченное коли- чество стандартных доминошек размера 2 × 1 клетку. доминошки можно поворачивать. требуется уложить как можно больше доминошек на доску так, чтобы соблюдались следующие условия: 1. каждая доминошка полностью покрывает две клетки доски. 2. никакие две доминошки не перекрываются. 3. каждая доминошка полностью лежит внутри доски. касание краев доски допускается. найдите максимальное количество доминошек, которое можно уложить с данными ограничени- ями. формат входных данных в единственной строке записано два целых числа m и n — размеры доски в клетках (1 ⩽ m ⩽ n ⩽ 16). формат выходных данных выведите одно число — максимальное количество доминошек, которое можно уложить. язык с++ , выполняется с long long в приложении code : : bloks
меее, немного с окончаниями напортачила, но если надо, то можно просто до кг сократить и всё будет ок
Внимание! Если программа не работает, обновите версию!
begin
var (a,b):=ReadInteger2;
Range(a,b).Aggregate(Biginteger(1),(p,q)->p*q).Println
end.
Результат показан во вложении 1. Большое число получилось)))
2. Free Pascal
program ideone;
var
a,b,i:integer;
p:extended;
begin
Read(a,b);
p:=1;
for i:=a to b do p:=p*i;
Writeln(p)
end.
Результат приведен во вложении 2.
К сожалению, на интервале данных [1;2018] в этой версии Паскаля недостаточно диапазона значений представляемого результата и было вычислено произведение на [1;1000]. Для [1;2018] выводится Inf - машинная бесконечность.