Театральная площадь в столице Берляндии имеет прямоугольную форму размером n × m метров.По случаю юбилея города было принято решение о мощении площади квадратными гранитными плитами.Каждый флагшток имеет размер a × a.
Какое наименьшее количество флажков необходимо для прокладывания квадрата?Разрешено покрывать поверхность больше Театральной площади, но площадь должна быть закрыта.Не разрешается разбивать каменные плиты.Стороны каменных плит должны быть параллельны сторонам квадрата.
Вход
Вход содержит три положительных целых числа в первой строке: n, m and a (1 ≤ n, m, a ≤ 10^9)
.
входные данные: 6 6 4
Выходные данные
Введите необходимое количество флажков.
#include<stdio.h>
#include<math.h>
int main(){
long long m, n, a;
scanf("%lld %lld %lld", &m, &n, &a);
long long req = ceil(m / a) * ceil(n / a);
printf("%lld", req);
}
Itдолжен дать мне 4
в первом тестовом случае, но он дает мне 1
.Я видел решение, в котором люди использовали int m, n, a
как глобально объявленные переменные, которые выше main()
в этом случае, как они сохраняют значение, если 10 ^ 18 в 4-байтовой глобально объявленной переменной (предположим, что последний тестовый случай очень большой).Или есть другое правило, когда мы объявляем переменную глобально?Некоторые из них проходили как main(m, n, a)
, нигде не объявляя.