Работа с двумерным динамическим массивом - C#
Формулировка задачи:
Доброго времени суток!
Имеется некая введенная таблица mas[i][j] (i - кол. строк), допустим:
A B C D
M A P
D H L
J A
Необходимо найти количество РАЗНЫХ букв между двумя строками.
Т.е на этом примере, берем строки 0-1, у них разные B C D M P, ответ 5.
0-2 = 7
0-3 = 4
1-2 = 6
1-3 = 3
2-3 = 5
изначально при вводи так же был сформирован массив m[i] елементами которого есть количество введенных в кажкой строке (i) елементов. Опять же на примере m[0]=4 , m[1]=3 , m[2]=3, m[3]=2 (Возможно это облегчит задачу)
Решение задачи: «Работа с двумерным динамическим массивом»
textual
Листинг программы
static void Main(string[] args)
{
char[][] mas = new char[][] {
new char[] { 'a', 'b', 'c', 'd'},
new char[] { 'm', 'a', 'p' },
new char[] { 'd', 'h', 'l' },
new char[] { 'j', 'a' } };
for (int i = 0; i < mas.Length - 1; i++)
{
for (int j = i + 1; j < mas.Length; j++)
{
var concated = mas[i].Concat(mas[j]);
int n = concated.Count(c => concated.Count(ch => ch == c) == 1);
Console.WriteLine("{0}-{1} = {2}", i, j, n);
}
}
Console.ReadKey();