Dada una array N*N mat[][] , la tarea es encontrar la suma de los valores propios de la array dada.
Ejemplos:
Entrada: mat[][] = {
{2, -1, 0},
{-1, 2, -1},
{0, -1, 2}}
Salida: 6
Entrada: mat[][] = {
{ 1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12},
{13, 14, 15, 16}}
Salida: 34
Enfoque: La suma de los valores propios de una array es igual a la traza de la array. La traza de una array cuadrada A n × n se define como la suma de los elementos en la diagonal principal (la diagonal desde la esquina superior izquierda hasta la esquina inferior derecha) de A.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation of the approach #include <bits/stdc++.h> using namespace std; #define N 4 // Function to return the sum of eigen // values of the given matrix int sumEigen(int mat[N][N]) { int sum = 0; // Calculate the sum of // the diagonal elements for (int i = 0; i < N; i++) sum += (mat[i][i]); return sum; } // Driver code int main() { int mat[N][N] = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 }, { 13, 14, 15, 16 } }; cout << sumEigen(mat); return 0; }
Java
// Java implementation of the approach import java.io.*; class GFG { static int N = 4; // Function to return the sum of eigen // values of the given matrix static int sumEigen(int mat[][]) { int sum = 0; // Calculate the sum of // the diagonal elements for (int i = 0; i < N; i++) sum += (mat[i][i]); return sum; } // Driver code public static void main (String[] args) { int mat[][] = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 }, { 13, 14, 15, 16 } }; System.out.println (sumEigen(mat)); } } // The code is contributed by Tushil..
Python3
# Python3 implementation of the approach N=4 # Function to return the sum of eigen # values of the given matrix def sumEigen(mat): sum = 0 # Calculate the sum of # the diagonal elements for i in range(N): sum += (mat[i][i]) return sum # Driver code mat= [ [ 1, 2, 3, 4 ], [ 5, 6, 7, 8 ], [ 9, 10, 11, 12 ], [ 13, 14, 15, 16 ] ] print(sumEigen(mat)) # This code is contributed by mohit kumar 29
C#
// C# implementation of the approach using System; class GFG { static int N = 4; // Function to return the sum of eigen // values of the given matrix static int sumEigen(int [,]mat) { int sum = 0; // Calculate the sum of // the diagonal elements for (int i = 0; i < N; i++) sum += (mat[i,i]); return sum; } // Driver code static public void Main () { int [,]mat = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 }, { 13, 14, 15, 16 } }; Console.Write(sumEigen(mat)); } } // The code is contributed by ajit...
Javascript
<script> // Javascript implementation of the approach var N = 4; // Function to return the sum of eigen // values of the given matrix function sumEigen(mat) { var sum = 0; // Calculate the sum of // the diagonal elements for (var i = 0; i < N; i++) sum += (mat[i][i]); return sum; } // Driver code var mat = [ [ 1, 2, 3, 4 ], [ 5, 6, 7, 8 ], [ 9, 10, 11, 12 ], [ 13, 14, 15, 16 ] ]; document.write( sumEigen(mat)); </script>
Producción:
34