작성일 :

문제 링크

19698번 - 헛간 청약

설명

W×H 크기의 헛간에 L×L 크기의 정사각형 공간을 배치할 때, 입주할 수 있는 소의 최대 마릿수를 구하는 문제입니다.


접근법

먼저 가로 방향으로 W / L개, 세로 방향으로 H / L개의 공간을 배치할 수 있습니다.

따라서 최대 수용 가능한 칸 수는 두 값을 곱한 것입니다.

응모한 소 N마리 중 실제 입주 가능한 수는 수용 가능한 칸 수와 N 중 더 작은 값입니다.



Code

C#

1
2
3
4
5
6
7
8
9
10
11
12
13
using System;

class Program {
  static void Main() {
    var line = Console.ReadLine()!.Split();
    var n = int.Parse(line[0]);
    var w = int.Parse(line[1]);
    var h = int.Parse(line[2]);
    var l = int.Parse(line[3]);
    var capacity = (w / l) * (h / l);
    Console.WriteLine(Math.Min(n, capacity));
  }
}

C++

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <bits/stdc++.h>
using namespace std;

int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);

  int n, w, h, l; cin >> n >> w >> h >> l;
  int capacity = (w / l) * (h / l);
  cout << min(n, capacity) << "\n";

  return 0;
}