02. Отбор записей для отчёта
Динамический массив List<T>
Что хранит. Последовательность элементов одного типа, которая может расти и уменьшаться. Сохраняет порядок и повторы.
Для чего используют. Подходит для плейлиста, заказа и списка результатов, когда элементы добавляются или удаляются во время работы.
Основные операции
| Запись на C# | Назначение |
a.Count | Число элементов; Capacity — отдельно выделенный запас места. |
a[i] | Прочитать или заменить элемент: 0 ≤ i < Count. |
a.Add(x) | Добавить в конец. |
a.Insert(i, x) | Вставить на позицию i: 0 ≤ i ≤ Count. |
a.RemoveAt(i) | Удалить по индексу; следующие элементы сдвинутся. |
a.Remove(x) | Удалить первое совпадение по значению; false, если его нет. |
a.IndexOf(x) | Индекс первого совпадения или −1. |
a.Sort() | Упорядочить элементы по возрастанию. |
Пример
Для примера нужны using System; и using System.Collections.Generic;. Код выполняется внутри Main.
List<int> a = new List<int>();
a.Add(10);
a.Add(30);
a.Insert(1, 20); // Теперь: 10, 20, 30.
a.Remove(10); // Теперь: 20, 30.
Console.WriteLine(a[0]);
Console.WriteLine(a.Count);
Вывод:
20
2
Важно. При вставке допустим индекс Count, при чтении, замене и удалении — нет. Во время foreach не добавляйте и не удаляйте элементы того же списка.
Для этой задачи
- Отбор. Добавляйте подходящие значения в новый список. Исходная последовательность при этом сохраняется.
В отчёт нужно включить только измерения из диапазона от L до R включительно. Сохраните исходный порядок подходящих значений и все их повторения.
Входные данные
Первая строка содержит n, L и R. Вторая строка содержит n целых измерений; при n = 0 эта строка пустая.
Выходные данные
В первой строке выведите количество выбранных значений. Во второй — выбранные значения через пробел. Если их нет, во второй строке выведите EMPTY.
Не выводите приглашения к вводу и пояснения. Служебные слова в ответах пишите в указанном регистре.
Ограничения
0 ≤ n ≤ 100000; −10⁹ ≤ L ≤ R ≤ 10⁹; измерения от −10⁹ до 10⁹.
| № | Входные данные | Выходные данные |
|
1
|
6 10 20
12 7 12 19 20 21
|
4
12 12 19 20
|
|
2
|
3 5 8
1 9 10
|
0
EMPTY
|
Напишите программу
Auto