Из массива А удалить те элементы, которые встречаются и в массиве А и в массиве В по крайней мере по 2 раза - C#
Формулировка задачи:
Из массива А удалить те элементы, которые встречаются и в массиве А и в массиве В по крайней мере по 2 раза. Пример, массив А[10]: 2 2 3 4 5 1 2 3 4 9, массив B[9]: 1 2 3 4 5 6 4 8 9. По 2 раза в обоих массивах встречается только элемент - 4. Массив А после удаление примет вид: А[8]: 2 2 3 5 1 2 3 9. Повторятся могут больше двух раз, и не только один элемент.
Прошу, помогите сделать...
Решение задачи: «Из массива А удалить те элементы, которые встречаются и в массиве А и в массиве В по крайней мере по 2 раза»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp2 { class Program { static void Main(string[] args) { int[] a = { 2, 2, 3, 4, 5, 1, 2, 3, 4, 9 }; int[] b = { 1, 2, 3, 4, 5, 6, 4, 8, 9 }; b = b.GroupBy(v => v).Where(c => c.Count() >= 2).SelectMany(v => v).Distinct().ToArray(); //выбрали элементы, которые встречаются более 2-х раз во втором массиве int[] a1 = a.GroupBy(v => v).Where(c => c.Count() >= 2).SelectMany(v => v).Distinct().ToArray(); //в первом for (int i = 0; i < b.Length; i++) a1 = a1.Where(v => v == b[i]).ToArray(); //оставили общие for (int i = 0; i < a1.Length; i++) a = a.Where(v => v != a1[i]).ToArray();//исключаем совпавшие с общими Console.Write(String.Join(" ", a)); Console.ReadKey(true); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д