Dada una array arr[] de N enteros. La tarea es encontrar la suma de factoriales de cada elemento de la array.
Ejemplos:
Entrada: arr[] = {7, 3, 5, 4, 8}
Salida: 45510
7! + 3! + 5! + 4! + 8! = 5040 + 6 + 120 + 24 + 40320 = 45510Entrada: arr[] = {2, 1, 3}
Salida: 9
Enfoque: implemente una función factorial(n) que encuentre el factorial de n e inicialice sum = 0 . Ahora, recorra la array dada y para cada elemento arr[i] actualice sum = sum + factorial(arr[i]) . Imprime la suma calculada al final.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation of the approach #include <iostream> #include <bits/stdc++.h> using namespace std; // Function to return the factorial of n int factorial(int n) { int f = 1; for (int i = 1; i <= n; i++) { f *= i; } return f; } // Function to return the sum of // factorials of the array elements int sumFactorial(int *arr, int n) { // To store the required sum int s = 0,i; for (i = 0; i < n; i++) { // Add factorial of all the elements s += factorial(arr[i]); } return s; } // Driver code int main() { int arr[] = { 7, 3, 5, 4, 8 }; int n = sizeof(arr) / sizeof(arr[0]); cout << sumFactorial(arr, n); return 0; } // This code is contributed by 29AjayKumar
Java
// Java implementation of the approach class GFG { // Function to return the factorial of n static int factorial(int n) { int f = 1; for (int i = 1; i <= n; i++) { f *= i; } return f; } // Function to return the sum of // factorials of the array elements static int sumFactorial(int[] arr, int n) { // To store the required sum int s = 0; for (int i = 0; i < n; i++) { // Add factorial of all the elements s += factorial(arr[i]); } return s; } // Driver Code public static void main(String[] args) { int[] arr = { 7, 3, 5, 4, 8 }; int n = arr.length; System.out.println(sumFactorial(arr, n)); } }
Python3
# Python implementation of the approach # Function to return the factorial of n def factorial(n): f = 1; for i in range(1, n + 1): f *= i; return f; # Function to return the sum of # factorials of the array elements def sumFactorial(arr, n): # To store the required sum s = 0; for i in range(0,n): # Add factorial of all the elements s += factorial(arr[i]); return s; # Driver code arr = [7, 3, 5, 4, 8 ]; n = len(arr); print(sumFactorial(arr, n)); # This code contributed by Rajput-Ji
C#
// C# implementation of the approach using System; class GFG { // Function to return the factorial of n static int factorial(int n) { int f = 1; for (int i = 1; i <= n; i++) { f *= i; } return f; } // Function to return the sum of // factorials of the array elements static int sumFactorial(int[] arr, int n) { // To store the required sum int s = 0; for (int i = 0; i < n; i++) { // Add factorial of all the elements s += factorial(arr[i]); } return s; } // Driver Code public static void Main() { int[] arr = { 7, 3, 5, 4, 8 }; int n = arr.Length; Console.WriteLine(sumFactorial(arr, n)); } } // This code is contributed by Ryuga
PHP
<?php // PHP implementation of the approach // Function to return the factorial of n function factorial( $n) { $f = 1; for ( $i = 1; $i <= $n; $i++) { $f *=$i; } return $f; } // Function to return the sum of // factorials of the array elements function sumFactorial($arr, $n) { // To store the required sum $s = 0; for ($i = 0; $i < $n; $i++) { // Add factorial of all the elements $s += factorial($arr[$i]); } return $s; } // Driver code $arr = array( 7, 3, 5, 4, 8 ); $n = sizeof($arr); echo sumFactorial($arr, $n); // This code is contributed by ihritik ?>
Javascript
<script> // Javascript implementation of the approach // Function to return the factorial of n function factorial(n) { let f = 1; for(let i = 1; i <= n; i++) { f *= i; } return f; } // Function to return the sum of // factorials of the array elements function sumFactorial(arr, n) { // To store the required sum let s = 0; for (let i = 0; i < n; i++) { // Add factorial of all the elements s += factorial(arr[i]); } return s; } // Driver code let arr = [ 7, 3, 5, 4, 8 ]; let n = arr.length; document.write(sumFactorial(arr, n)); // This code is contributed by bobby </script>
45510
Complejidad temporal: O(n 2 )
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por facebookruppal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA