はまやんはまやんはまやん

hamayanhamayan's blog

タイル貼り [Ritsumeikan University Competitive Programming Camp 2019 Day 1 A]

https://onlinejudge.u-aizu.ac.jp/services/room.html#RitsCamp19Day1/problems/A

解説

https://onlinejudge.u-aizu.ac.jp/services/review.html#RitsCamp19Day1/3415062

覆われていない部分の面積=長方形の面積ー覆われている面積
これで計算する。
長方形の面積はWHで、覆われている面積を考える。
縦Hで縦Aをなるべく並べると、floor(H/A)個入るので、縦幅はfloor(H/A)*Aとなる。
横幅も同様に計算できるので、覆われている面積も求まる。

int H, W, A, B;
//---------------------------------------------------------------------------------------------------
void _main() {
    cin >> H >> W >> A >> B;

    int a = H / A;
    int b = W / B;

    int ans = H * W - a * A * b * B;
    cout << ans << endl;
}