Ремонт
(Время: 1 сек. Память: 16 Мб Сложность: 11%)
В этой задаче необходимо найти площадь боковых стен заданного параллелепипеда и разделить ее на A (A=16) с округлением в большую сторону.
Площадь находится по формуле S = 2*H*(W+L) . Округление в большую сторону при делении на число A можно реализовать следующим образом: прибавить A-1 и целочисленно разделить на A. Действительно:
- если S делится на A без остатка, то прибавление A-1 не изменит ответ;
- если S делится на A с остатком, то прибавление A-1 увеличит ответ на 1.
Деление на 16 можно осуществить побитовым сдвигом вправо на 4 бита.
Разбор: Кормышов М.Д.
|