Cuente los triángulos necesarios para formar un castillo de naipes de altura N

Dado un número N , la tarea es contar el número de triángulos necesarios para formar un castillo de naipes de N niveles .

Ejemplos: 

Entrada: N = 3 
Salida: 13 
Explicación:
 

A partir de la imagen de arriba, se pueden hacer las siguientes observaciones:
Conteo de triángulos de la unidad 1 = 9 (6 triángulos no invertidos y 3 triángulos invertidos)
Conteo de triángulos de la unidad 2 = 3
Conteo de triángulos de la unidad 3 = 1
Por lo tanto, el total número de triángulos = 6 + 3 + 3 + 1 = 13

Entrada: N = 2
Salida: 5

Enfoque: El número requerido de triángulos necesarios para formar un castillo de naipes de N niveles se puede calcular mediante la fórmula:

T(n) = \left\lfloor\frac{n (n+2) (2n+1)} 8\right\rfloor

Ilustración:

Para N = 3
Número de triángulos = 3 * (3 + 2) * (6 + 1) / 8 = 13

Para N = 2 
Número de triángulos = 2 * (2 + 2) * (4+ 1) / 8 = 5

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

CPP

// C++ implementation of the
// above approach
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to find the
// number of triangles
int noOfTriangles(int n)
{
    return floor(n * (n + 2)
                 * (2 * n + 1) / 8);
}
 
// Driver Code
int main()
{
    int n = 3;
    // Function call
    cout << noOfTriangles(n) << endl;
    return 0;
}

Java

// Java implementation of the
// above approach
 
import java.lang.*;
 
class GFG {
 
    // Function to find number of triangles
    public static int noOfTriangles(int n)
    {
        return (n * (n + 2) * (2 * n + 1) / 8);
    }
 
    // Driver Code
    public static void main(String args[])
    {
        int n = 3;
        // Function call
        System.out.print(noOfTriangles(n));
    }
}

Python3

# Python3 implementation of
# the above approach
 
# Function to find required
# number of triangles
def noOfTriangles(n):
    return n * (n + 2) * (2 * n + 1) // 8
 
 
# Driver Code
n = 3
 
# Function call
print(noOfTriangles(n))

C#

// C# implementation of the
// above approach
using System;
 
class GFG {
    // Function to find number of triangles
    public static int noOfTriangles(int n)
    {
        return (n * (n + 2) * (2 * n + 1) / 8);
    }
 
    // Driver Code
    public static void Main(String[] args)
    {
        int n = 3;
        Console.Write(noOfTriangles(n));
    }
}

Javascript

<script>
 
// Javascript implementation of the
// above approach
 
// Function to find the
// number of triangles
function noOfTriangles(n)
{
    return Math.floor(n * (n + 2)
                 * (2 * n + 1) / 8);
}
 
// Driver Code
var n = 3;
// Function call
document.write(noOfTriangles(n));
 
</script>
Producción: 

13

 

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

Publicación traducida automáticamente

Artículo escrito por spp____ 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 *