Исключение элемента, удовлетворяющего условию

Рейтинг: -1Ответов: 1Опубликовано: 05.02.2015

Дана целочисленная последователньость А. Получить новую последовательность. Если порядковый номер элемента А делится на 3 нацело, то этот элемент в новую последователньость не включается; если остаток от деления порядкового номера на 3 равен 1, то в новую последовательность добавляется удвоенное значение этого элемента; в противном случае элемент добавляется в новую последовательность без изменений.

Как не включать элементы, делящиеся на 3? Какие способы существуют?

Ответы

▲ 3Принят

Используйте перегрузку Where, которая кроме элемента предоставляет индекс элемента:

var list = new List<string>()
{
    "one", "two", "three", "four"
}

var newList = list.Where((s, i) => i % 3 != 0); // two, three

newList будет содержать элементы, индексы которых не делятся на три.