Dada una array arr[] de tamaño N (> 2). La tarea es encontrar la suma máxima de dígitos del producto de dos números cualesquiera de la array dada.
Ejemplos:
Entrada: arr[] = {8, 7}
Salida: 11
El producto de 8 y 7 es 56 . La suma de los dígitos de 56 es igual a 11 .
Entrada: arr[] = {4, 3, 5}
Salida: 6
Producto de 4 y 3 = 12. Suma de los dígitos = 3.
Producto de 3 y 5 = 15. Suma de los dígitos = 6.
Producto de 4 y 5 = 20. Suma de los dígitos = 2.
Enfoque: ejecute bucles anidados para seleccionar dos números de la array y obtener el producto. Para cada producto, verifique la suma de dígitos y encuentre la suma máxima de dígitos.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ program find the maximum sum of // digits of the product of two numbers #include <bits/stdc++.h> using namespace std; // Function to find the sum of the digits int sumDigits(int n) { int digit_sum = 0; while (n) { digit_sum += n % 10; n /= 10; } return digit_sum; } // Function to find the maximum sum of digits of product int productOfNumbers(int arr[], int n) { int sum = INT_MIN; // Run nested loops for (int i = 0; i < n - 1; i++) { for (int j = i + 1; j < n; j++) { int product = arr[i] * arr[j]; // Find the maximum sum sum = max(sum, sumDigits(product)); } } // Return the required answer return sum; } // Driver code int main() { int arr[] = { 4, 3, 5 }; int n = sizeof(arr) / sizeof(arr[0]); cout << productOfNumbers(arr, n); return 0; }
Java
// Java program find the maximum sum of // digits of the product of two numbers import java.io.*; class GFG { // Function to find the sum of the digits static int sumDigits(int n) { int digit_sum = 0; while (n > 0) { digit_sum += n % 10; n /= 10; } return digit_sum; } // Function to find the maximum sum // of digits of product static int productOfNumbers(int []arr, int n) { int sum = Integer.MIN_VALUE; // Run nested loops for (int i = 0; i < n - 1; i++) { for (int j = i + 1; j < n; j++) { int product = arr[i] * arr[j]; // Find the maximum sum sum = Math.max(sum, sumDigits(product)); } } // Return the required answer return sum; } // Driver code public static void main (String[] args) { int []arr = { 4, 3, 5 }; int n = arr.length; System.out.print( productOfNumbers(arr, n)); } } // This code is contributed by anuj_67..
Python3
# Python3 program find the maximum sum of # digits of the product of two numbers import sys # Function to find the sum of the digits def sumDigits(n): digit_sum = 0; while (n > 0): digit_sum += n % 10; n /= 10; return digit_sum; # Function to find the maximum sum # of digits of product def productOfNumbers(arr, n): sum = -sys.maxsize - 1; # Run nested loops for i in range(n - 1): for j in range(i + 1, n): product = arr[i] * arr[j]; # Find the maximum sum sum = max(sum, sumDigits(product)); # Return the required answer return sum; # Driver code if __name__ == '__main__': arr =[ 4, 3, 5 ]; n = len(arr); print(int(productOfNumbers(arr, n))); # This code contributed by PrinciRaj1992
C#
// C# program find the maximum sum of // digits of the product of two numbers using System; class GFG { // Function to find the sum of the digits static int sumDigits(int n) { int digit_sum = 0; while (n > 0) { digit_sum += n % 10; n /= 10; } return digit_sum; } // Function to find the maximum sum // of digits of product static int productOfNumbers(int []arr, int n) { int sum = int.MinValue; // Run nested loops for (int i = 0; i < n - 1; i++) { for (int j = i + 1; j < n; j++) { int product = arr[i] * arr[j]; // Find the maximum sum sum = Math.Max(sum, sumDigits(product)); } } // Return the required answer return sum; } // Driver code public static void Main (String[] args) { int []arr = { 4, 3, 5 }; int n = arr.Length; Console.Write(productOfNumbers(arr, n)); } } // This code is contributed by 29AjayKumar
Javascript
<script> // Javascript program find the maximum sum of // digits of the product of two numbers // Function to find the sum of the digits function sumDigits(n) { let digit_sum = 0; while (n > 0) { digit_sum += n % 10; n = parseInt(n / 10, 10); } return digit_sum; } // Function to find the maximum sum of digits of product function productOfNumbers(arr, n) { let sum = Number.MIN_VALUE; // Run nested loops for (let i = 0; i < n - 1; i++) { for (let j = i + 1; j < n; j++) { let product = arr[i] * arr[j]; // Find the maximum sum sum = Math.max(sum, sumDigits(product)); } } // Return the required answer return sum; } let arr = [ 4, 3, 5 ]; let n = arr.length; document.write(productOfNumbers(arr, n)); </script>
Producción:
6
Publicación traducida automáticamente
Artículo escrito por isa_aanchal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA