Contar cubos de tamaño K inscritos en un cubo de tamaño N

Dados dos números enteros N y K , la tarea es encontrar el número de cubos de tamaño K que pueden estar contenidos en un cubo de tamaño N.

Ejemplos:

Entrada: N = 2, K = 1
Salida: 8
Explicación:
Hay 8 cubos de tamaño 1 que se pueden dibujar dentro del cubo más grande de tamaño 2. 
 

 Entrada: N = 5, K = 2
Salida: 64
Explicación:
Hay 64 cubos de tamaño 2 que se pueden dibujar dentro del cubo más grande de tamaño 5.

Enfoque: La observación clave para resolver el problema es que el número de cubos dentro del cubo de tamaño N es (N 2 * (N+1) 2 )/4 . Por lo tanto, los cubos de tamaño K dentro del cubo de tamaño N es:

(N - K +1 )^3

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

C++

// C++ implementation of the
// above approach
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to find the number
// of the cubes of the size K
int No_of_cubes(int N, int K)
{
    int No = 0;
 
    // Stores the number of cubes
    No = (N - K + 1);
 
    // Stores the number of cubes
    // of size k
    No = pow(No, 3);
    return No;
}
 
// Driver Code
int main()
{
    // Size of the bigger cube
    int N = 5;
 
    // Size of the smaller cube
    int K = 2;
 
    cout << No_of_cubes(N, K);
    return 0;
}

Java

// Java implementation of the
// above approach
class GFG{
 
// Function to find the number
// of the cubes of the size K
static int No_of_cubes(int N,
                       int K)
{
  int No = 0;
 
  // Stores the number of cubes
  No = (N - K + 1);
 
  // Stores the number of cubes
  // of size k
  No = (int) Math.pow(No, 3);
  return No;
}
 
// Driver Code
public static void main(String[] args)
{
  // Size of the bigger cube
  int N = 5;
 
  // Size of the smaller cube
  int K = 2;
 
  System.out.print(No_of_cubes(N, K));
}
}
 
// This code is contributed by Princi Singh

Python3

# Python3 implementation of the
# above approach
  
# Function to find the number
# of the cubes of the size K
def No_of_cubes(N, K):
     
    No = 0
  
    # Stores the number of cubes
    No = (N - K + 1)
  
    # Stores the number of cubes
    # of size k
    No = pow(No, 3)
    return No
 
# Driver Code
 
# Size of the bigger cube
N = 5
  
# Size of the smaller cube
K = 2
  
print(No_of_cubes(N, K))
 
# This code is contributed by sanjoy_62

C#

// C# implementation of the
// above approach
using System;
  
class GFG{
      
// Function to find the number
// of the cubes of the size K
static int No_of_cubes(int N, int K)
{
    int No = 0;
     
    // Stores the number of cubes
    No = (N - K + 1);
     
    // Stores the number of cubes
    // of size k
    No = (int)Math.Pow(No, 3);
    return No;
}
  
// Driver Code
public static void Main()
{
     
    // Size of the bigger cube
    int N = 5;
     
    // Size of the smaller cube
    int K = 2;
     
    Console.Write(No_of_cubes(N, K));
}
}
 
// This code is contributed by sanjoy_62

Javascript

<script>
 
// JavaScript program for
// the above approach
 
// Function to find the number
// of the cubes of the size K
function No_of_cubes(N, K)
{
  let No = 0;
  
  // Stores the number of cubes
  No = (N - K + 1);
  
  // Stores the number of cubes
  // of size k
  No = Math.pow(No, 3);
  return No;
}
 
// Driver code
 
  // Size of the bigger cube
  let N = 5;
  
  // Size of the smaller cube
  let K = 2;
  document.write(No_of_cubes(N, K));
   
  // This code is contributed by splevel62.
</script>
Producción: 

64

 

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

Publicación traducida automáticamente

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