Изменения

Перейти к: навигация, поиск

Получение объекта по номеру

11 байт добавлено, 01:57, 9 ноября 2011
Нет описания правки
Получим элементы объекта по порядку: сначала определим какой элемент будет стоять на первом месте, втором и так далее. Считаем, что мы нашли первые <tex>i</tex> элементов объекта. Для всех вариантов элемента, который может стоять на <tex>(i+1)</tex>-ой позиции, посчитаем диапазон номеров, который будет соответствовать объектам с данным префиксом. Если искомый номер входит в один из диапазонов, то, очевидно, мы нашли элемент, который должени стоять на <tex>(i+1)</tex>-ом месте. Диапазоны номеров не пересекаются, значит, на это место больше нельзя поставить никакой другой элемент, соответственно, это единственный элемент, который может стоять на этой позиции.
*В начале каждого шага <tex>numOfObject </tex> {{---}} номер комбинаторного объекта среди объектов с заданным префиксом.
*<tex>n</tex> {{---}} количество элементов в комбинаторном объекте (например, битовый вектор длины <tex>n</tex>)
Анонимный участник

Навигация