题意
用a*a的石板覆盖在n*m的长方形广场上,允许石板范围超过广场,石板两侧应平行于广场两侧
问覆盖完广场的石板数量最少是多少
思路
1.判断石板的长、宽与广场的长、宽的是否存在倍数关系,不存在则还需考虑取整的问题
坑点
无
代码
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long int n,m,a;
cin>>n>>m>>a;
if(n%a==0)//是否可被整除
{
n/=a;//存在倍数关系,看需要几个a
}
else{
n=ceil(double(n/a+1));//否则向上取整
}
if(m%a==0)//同理
{
m/=a;
}
else{
m=ceil(double(m/a+1));
}
cout<<n*m;//求出需要几个石板
return 0;
}
总结
难度简单