How to find the equilibrium index of an array (sum arr[0 to index - 1] == sum arr[index + 1 to size]) in VB.NET

1 Answer

0 votes
Imports System

Public Class Program
    Private Shared Function getEquilibriumIndex(ByVal arr As Integer()) As Integer
        Dim sum_arr As Integer = 0
        Dim left_part_sum As Integer = 0
        Dim size As Integer = arr.Length

        For i As Integer = 0 To size - 1
            sum_arr += arr(i)
        Next

        For i As Integer = 0 To size - 1
            sum_arr -= arr(i)

            If left_part_sum = sum_arr Then
                Return i
            End If

            left_part_sum += arr(i)
        Next

        Return -1
    End Function

    Public Shared Sub Main(ByVal args As String())
        Dim arr As Integer() = New Integer() {-9, 2, 5, 8, -7, 4, 1}

        Console.Write("equilibrium index = " & getEquilibriumIndex(arr))
    End Sub
End Class




' run:
'
' equilibrium index = 3
'

 



answered Apr 26, 2023 by avibootz
...