码迷,mamicode.com
首页 > 其他好文 > 详细

Codeforces Beta Round #1 A. Theatre Square 题解

时间:2019-06-15 16:04:33      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:长方形   ace   题目   向上取整   必须   code   codeforce   ceil   而且   

题目链接:http://codeforces.com/contest/1/problem/A
题目大意:
给你一个 n × m 的矩形地面,你要用 a × a 的地瓷砖铺满它。但是你不能破坏这些地砖,
而且你铺的瓷砖都必须和地面的长或宽平行,问最少需要多少多少瓷砖?
题目分析:
这是一道基础问题,不涉及什么比较有难度的算法。
首先我们来看,按照题目要求来铺瓷砖的话,我们最终铺出来的也是一个矩形。
并且我们设我们铺出来的长方形的长和宽分别为 n‘ 和 m‘ ,并且满足 n‘ ≥ n 且 m‘ ≥ m 。
并且我们知道, n‘ 和 m‘ 都是能被 a 整除的。所以我们只需要找到最小的 n‘ 和 m‘ 就可以了。
通过分析我们能够得到最小的 n‘ = ⌈n/a⌉ × a , 最小的 m‘ = ⌈m/a⌉ × a 。(其中 ⌈⌉ 表示向上取整)
所以我们可以很方便地实现这个代码:

#include <bits/stdc++.h>
using namespace std;
long long n, m, a;

int main() {
    cin >> n >> m >> a;
    cout << ( ( (n+a-1)/a ) * ( (m+a-1)/a ) ) << endl;
    return 0;
}

  

Codeforces Beta Round #1 A. Theatre Square 题解

标签:长方形   ace   题目   向上取整   必须   code   codeforce   ceil   而且   

原文地址:https://www.cnblogs.com/mooncode/p/11027611.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!