using System.Collections.Generic;
public static void Main()
var array1 = new string[,]{ {"a","1"}, {"b", "2"}};
var array2 = new string[,]{ {"a","3"}, {"c", "3"}};
foreach(var t in Program.ToTuples(array1).Concat(Program.ToTuples(array2))
.GroupBy(row => row.Item1)
.Select(t => (t.Key, t.Sum(row => row.Item2))) ) {
Console.WriteLine(t.Item1 + " " + t.Item2);
static IEnumerable<(string, int)> ToTuples(string[,] array) {
for (int i=0; i < array.GetLength(0); i++) {
yield return (array[i,0], int.Parse(array[i,1]));