Dado un rectángulo de largo l y ancho b , necesitamos encontrar el número mínimo de cuadrados que pueden cubrir la superficie del rectángulo, dado que cada cuadrado tiene un lado de largo a . Se permite cubrir la superficie más grande que el rectángulo, pero el rectángulo debe cubrirse. No está permitido romper el cuadrado.
Ejemplos:
Input : 1 2 3 Output :1 We have a 3x3 square and we need to make a rectangle of size 1x2. So we need only 1 square to cover the rectangle. Input : 11 23 14 Output :2
La única forma de llenar el rectángulo de manera óptima es colocar cada cuadrado de manera que quede paralelo a los lados del rectángulo. Entonces solo necesitamos encontrar el número de cuadrados para cubrir completamente el largo y el ancho del rectángulo.
La longitud del rectángulo es l , y si la longitud del lado del cuadrado es una l dividida , entonces debe haber l/a cuadrados para cubrir la longitud total de l . Si l no es divisible por a , debemos sumar 1 a l/a para redondearlo hacia abajo. Para ello, podemos utilizar la función ceil , ya que ceil(x) devuelve el menor número entero superior o igual a x.
Podemos hacer lo mismo con el ancho del rectángulo y tomar el número de cuadrados en el ancho como ceil(b/a) .
Entonces, el número total de cuadrados = ceil(m/a) * ceil(n/a) .
C++
// C++ program to find the minimum number // of squares to cover the surface of the // rectangle with given dimensions #include <bits/stdc++.h> using namespace std; int squares(int l, int b, int a) { // function to count // the number of squares that can // cover the surface of the rectangle return ceil(l / (double)a) * ceil(b / (double)a); } // Driver code int main() { int l = 11, b = 23, a = 14; cout << squares(l, b, a) << endl; return 0; }
Java
// Java program to find the minimum number // of squares to cover the surface of the // rectangle with given dimensions class GFG { static int squares(int l, int b, int a) { // function to count // the number of squares that can // cover the surface of the rectangle return (int)(Math.ceil(l / (double)a) * Math.ceil(b / (double)a)); } // Driver code public static void main(String[] args) { int l = 11, b = 23, a = 14; System.out.println(squares(l, b, a)); } } // This code is contributed by ChitraNayal
Python 3
# Python3 program to find the minimum number # of squares to cover the surface of the # rectangle with given dimensions import math def squares(l, b, a): # function to count # the number of squares that can # cover the surface of the rectangle return math.ceil(l / a) * math.ceil(b / a) # Driver code if __name__ == "__main__": l = 11 b = 23 a = 14 print(squares(l, b, a)) # This code is contributed # by ChitraNayal
C#
// C# program to find the minimum number // of squares to cover the surface of the // rectangle with given dimensions using System; class GFG { static int squares(int l, int b, int a) { // function to count // the number of squares that can // cover the surface of the rectangle return (int)(Math.Ceiling(l / (double)a) * Math.Ceiling(b / (double)a)); } // Driver code public static void Main() { int l = 11, b = 23, a = 14; Console.Write(squares(l, b, a)); } } // This code is contributed by ChitraNayal
PHP
<?php // PHP program to find the minimum number // of squares to cover the surface of the // rectangle with given dimensions function squares($l, $b, $a) { // function to count // the number of squares that can // cover the surface of the rectangle return ceil($l / (double)$a) * ceil($b / (double)$a); } // Driver code $l = 11; $b = 23; $a = 14; echo squares($l, $b, $a); // This code is contributed // by ChitraNayal ?>
Javascript
<script> // javascript program to find the minimum number // of squares to cover the surface of the // rectangle with given dimensions function squares(l , b , a) { // function to count // the number of squares that can // cover the surface of the rectangle return parseInt(Math.ceil(l / a) * Math.ceil(b / a)); } // Driver code var l = 11, b = 23, a = 14; document.write(squares(l, b, a)); // This code is contributed by Amit Katiyar </script>
2
Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por IshwarGupta y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA