Área máxima de rectángulo posible con perímetro dado

Dado el perímetro de un rectángulo, la tarea es encontrar el área máxima de un rectángulo que puede usar n unidades de longitud como su perímetro. 

Nota: La longitud y el ancho deben ser un valor integral. 

Ejemplo: 

Input: perimeter = 15
Output: Maximum Area = 12

Input: perimeter = 16
Output: Maximum Area = 16

Enfoque: Para que el área sea máxima de cualquier rectángulo, la diferencia de largo y ancho debe ser mínima. Entonces, en tal caso, la longitud debe ser techo (perímetro / 4) y la anchura será piso (perímetro / 4). Por lo tanto, el área máxima de un rectángulo con perímetro dado es igual a ceil(perímetro/4) * piso(perímetro/4) .

A continuación se muestra la implementación del enfoque anterior:  

C++

// C++ to find maximum area rectangle
#include <bits/stdc++.h>
using namespace std;
 
// Function to find max area
int maxArea(float perimeter)
{
    int length = (int)ceil(perimeter / 4);
    int breadth = (int)floor(perimeter / 4);
 
    // return area
    return length * breadth;
}
 
// Driver code
int main()
{
    float n = 38;
    cout << "Maximum Area = " << maxArea(n);
 
    return 0;
}

Java

//Java to find maximum area rectangle
 
import java.io.*;
 
class GFG {
// Function to find max area
static int maxArea(float perimeter)
{
    int length = (int)Math.ceil(perimeter / 4);
    int breadth = (int)Math.floor(perimeter / 4);
 
// return area
return length * breadth;
}
 
// Driver code
     
    public static void main (String[] args) {
 
        float n = 38;
        System.out.println("Maximum Area = " +
                maxArea(n));
         
    }
}

Python3

# Python3 program to find
# maximum area rectangle
from math import ceil, floor
 
# Function to find max area
def maxArea(perimeter):
    length = int(ceil(perimeter / 4))
    breadth = int(floor(perimeter / 4))
 
    # return area
    return length * breadth
 
# Driver code
if __name__ == '__main__':
    n = 38
    print("Maximum Area =", maxArea(n))

C#

// C# to find maximum area rectangle
using System;
 
class GFG
{
// Function to find max area
static int maxArea(float perimeter)
{
    int length = (int)Math.Ceiling(perimeter / 4);
    int breadth = (int)Math.Floor(perimeter / 4);
 
    // return area
    return length * breadth;
}
 
// Driver code
public static void Main()
{
    float n = 38;
    Console.WriteLine("Maximum Area = " +
                             maxArea(n));
}
}
 
// This code is contributed
// by Akanksha Rai(Abby_akku)

PHP

<?php
// PHP to find maximum area rectangle
 
// Function to find max area
function maxArea($perimeter)
{
    $length = (int)ceil($perimeter / 4);
    $breadth = (int)floor($perimeter / 4);
 
    // return area
    return ($length * $breadth);
}
 
// Driver code
$n = 38;
echo "Maximum Area = " , maxArea($n);
 
// This code is contributed by jit_t
?>

Javascript

<script>
 
// JavaScript to find maximum area rectangle
 
// Function to find max area
function maxArea(perimeter)
{
    let length = Math.ceil(perimeter / 4);
    let breadth = Math.floor(perimeter / 4);
 
    // return area
    return length * breadth;
}
 
// Driver code
let n = 38;
 
document.write("Maximum Area = " + maxArea(n));
 
// This code is contributed by Manoj.
 
</script>
Producción: 

Maximum Area = 90

 

Tiempo Complejidad: O(1)
Espacio Auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por Shivam.Pradhan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *