题意
用 a×a 的石板覆盖 n×m 的长方形广场,允许石板覆盖的区域超出广场,不允许打破石板,石板的两侧应平行于广场两侧,要求覆盖完广场所需的石板数量最少是多少。
输入样例1
6 6 4
输出样例1
4
题解
由于每一块石板都是正方形,所以并无横竖摆法的区别,所以只需按矩阵进行摆放,没必要想太多。由此可以知道长为向上取整的长度除以边长,宽也一样,两者相乘就是答案了。
代码如下
#include<bits/stdc++.h>
using namespace std;
long a,b,c;
long long d;
int main()
{
cin>>a>>b>>c;
d=ceil(a*1.0/c)/*第一条边所需石板*/*ceil(b*1.0/c)/*第二条边所需石板*/;
cout<<d;
}