static void Main(string[] args)
        {
            //https://www.udemy.com/course/cpp-data-structures-algorithms-prateek-narang/learn/quiz/5293174#overview
            int m = 4;
            int n = 4;

            int[,] mat = new int[4, 4] {
                { 1, 0, 0, 0 }, { 1, 1, 1, 1, }, { 1, 0, 0, 0 }, { 1, 0, 0, 0 }
            };
            Weakness[] ip = new Weakness[5];
            Weakness[] op = new Weakness[5];
            ip[0] = null;
            op[0] = null;

            int k = 1;

            for (int i = 0; i < 4; i++)
            {
                int sum = 0;
                for (int j = 0; j < 4; j++)
                {
                    sum = sum + mat[i, j];
                }
                ip[k++] = new Weakness {
                    NoOfSoldiers = sum, Index = i
                };
            }

            for (int i = 1; i < 5; i++)
            {
                op[i] = ip[i];
                op    = GetMinHeap(op, i);
            }

            Weakness secondWeakest = null;

            if (op[2].NoOfSoldiers < op[3].NoOfSoldiers)
            {
                secondWeakest = op[2];
            }
            else if (op[2].NoOfSoldiers > op[3].NoOfSoldiers)
            {
                secondWeakest = op[3];
            }
            else if (op[2].Index < op[3].Index)
            {
                secondWeakest = op[2];
            }
            else
            {
                secondWeakest = op[3];
            }

            var opArray = new int[] { op[1].Index, secondWeakest.Index };

            Console.WriteLine("[" + string.Join(",", opArray) + "]");
        }
        private static bool Condition(Weakness current, Weakness[] op, int index)
        {
            int      childIndex  = index;
            int      parentIndex = index / 2;
            Weakness w           = op[parentIndex];

            if (current.NoOfSoldiers < w.NoOfSoldiers)
            {
                return(true);
            }
            if (current.Index < w.Index)
            {
                return(true);
            }

            return(false);
        }