题目链接:点这里。
Theatre Square in the capital city of Berland has a rectangular shape with the size n × m meters. On the occasion of the city's anniversary, a decision was taken to pave the Square with square granite flagstones. Each flagstone is of the size a × a.
What is the least number of flagstones needed to pave the Square? It's allowed to cover the surface larger than the Theatre Square, but the Square has to be covered. It's not allowed to break the flagstones. The sides of flagstones should be parallel to the sides of the Square.
Input
The input contains three positive integer numbers in the first line: n, m and a (1 ≤ n, m, a ≤ 109).
Output
Write the needed number of flagstones.
Examples
Input
6 6 4
Output
4
【题意】
给你一个n*m的方块,让你用k*k的正方形覆盖,问你最少要几个。
输入依次为n m k。
【分析】
对于长和宽分别考虑,然后直接向上取整就可以了。
唯一要注意的就是会爆int,所以直接开long long就行了。
【代码】
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long a,b,c;
scanf("%lld%lld%lld",&a,&b,&c);
printf("%lld\n",((a+c-1)/c) * ((b+c-1)/c));
return 0;
}