public static void Main()
int[][] myMatrix = new int[][]
new int[] { 5, 2, 3, 4, 100 }
, new int[] { 9, 3, 2, 540034, 2 }
, new int[] { 6, 1000, 3, 2, 9 }
, new int[] { 8, 1, 9, 4, 5 }
int rows = myMatrix.Length;
int[][] sumTotal = new int[rows][];
for(int i = 0; i < myMatrix.Length; i++)
sumTotal[i] = new int[myMatrix[i].Length];
for(int j = 0; j<myMatrix[i].Length; j++)
toAdd = sumTotal[i][j - 1];
toAdd = sumTotal[i - 1][j];
toAdd = Math.Max(sumTotal[i - 1][j], sumTotal[i][j - 1]);
sumTotal[i][j] = toAdd + myMatrix[i][j];
int largestValue = sumTotal[rows - 1][sumTotal[rows - 1].Length-1];
Console.WriteLine("the largest value is: " + largestValue);