Въпросът е прост, искам да картографирам всяко число от 0 до N-1 към редица елементи K ‹ N, така че: 1,2,3,...,i-1 картографира елемент 1 i, i+1, i+2,...,i+k-1 се преобразува в елемент 2 ... и така нататък, докато i+k+...+z, i+k+...+z+1, i+k+... +z+2, ..., N-1 преобразува в елемент K
Забележка: i,j, k,...,z са различни стойности (иначе не бих използвал различни букви :) ).
Има ли начин да има структура и функция f(i), връщащи съответния елемент във време O(1), заемащи разумно количество пространство? (Вектор от N елемента, като всеки елемент от диапазона сочи към елемента, който засяга, НЕ е разумно пространство)
Мога да се сетя за B дървета, които биха ми осигурили O(log(n)) време за достъп, но съм любопитен дали има O(1) ефективно решение.
Благодаря предварително!
Бруно