Количество элементов на отрезке
Количество элементов на отрезке — это число элементов массива, чьи индексы или значения попадают в заданный диапазон. Такой подсчёт является одной из распространённых операций при обработке отрезка массива.
Формула
Формула \(N = R - L + 1\) используется, если нужно узнать количество позиций с индексами от \(L\) до \(R\) включительно. Если границы не входят в диапазон, формула изменяется. При подсчёте по значениям каждый элемент проверяют условием, например \(a_i \ge A\) и \(a_i \le B\), а затем увеличивают счётчик.
В массиве \([7, 2, 9, 4, 6]\) нужно посчитать элементы с индексами от 1 до 3 включительно. Это элементы \(2\), \(9\) и \(4\), поэтому количество равно \(3\). По формуле получаем: \(3 - 1 + 1 = 3\). Если требуется посчитать значения от 4 до 8, подходят \(7\), \(4\) и \(6\) — также три элемента, но уже по условию на значения.
Количество позиций на отрезке индексов и количество элементов, подходящих по значению, — разные задачи. Для индексов ответ можно найти по формуле, а для значений необходимо просмотреть элементы и проверить условие. Частая ошибка — забыть, что обычно отрезок задаётся включительно, или использовать \(R-L\) вместо \(R-L+1\).
В программировании для подсчёта обычно заводят переменную-счётчик со значением 0. Затем перебирают нужные элементы и прибавляют единицу, если условие выполнено. Такой приём называют условным счётчиком; он применяется и внутри обработки отрезка массива. Если одновременно требуется не только посчитать элементы, но и сложить их, используют сумму на отрезке.
Сколько элементов находится на отрезке индексов от 4 до 9 включительно?
Главное
- Для индексов от \(L\) до \(R\) включительно количество элементов равно \(R-L+1\).
- При подсчёте по значениям каждый элемент проверяют условием попадания в диапазон.
- Всегда уточняйте, входят ли левая и правая границы в отрезок.