есть некоторый массив, состоящий из субмассивов, в которых хранится некоторое количество векторов, несущих информацию и много мусора. ( http://ompldr.org/vYW9sZg/newfile1.png)
процессе работы программы на каждом глобальном шаге итераций несущие информацию вектора будут меняться:
а)переходить, между соседними субмассивами. б)уничтожаться в)рождаться
При этом, свободных, не несущих информациюб, ячеек заведомо больше, чем значащих. соответственно, нужно посчитать:
1)номер первой свободной ячейки в соседнем массиве
2)номера всех ячеек, несущих информацию
как это лучше сделать? самый дубовый вариант — это завести или внутри этого массива или внутри дополнительного булевую ячейку, но тогда придётся лишний раз бегать по нему, а это затратно.
по идее, всю информацию о том, в каких ячейках информация, а в каких мусор можно представить ввиде двоичного числа (111100011111...N1), где 0 — пустая ячейка, а 1 — информативная. можно ли из этого числа как то быстро узнать номер первого нуля, номера единиц?