Есть два набора списков- Аi и Bi
Нужно вставить всегда на каждую пятую позицию результирующего множества(Ci) элементы второго множества Bi. Между этими элементами вставляется элементы первого множества Ai.
нужно вывести общую формулу вставляемой позиции относительно каждой порции выбираемых элементов множества Аi .
Ограничения -
1. элементы Ai всегда выбираются по 10 .
2. (это создает другое ограничения - в формуле могут быть переменные только относительно этих индексов)
3. элементы Bi всегда вставляются на каждую пятую позицию результирующего множества(Ci)
4. (первая выборка имеет жесткие позиции и под общую последовательность не попадает номера позиций 1,5,10).
5. элементы второй выборки выбираются по 2 или по 3 в зависимости от того сколько нужно вставить. и это число должно быть подсчитано до вставки
начал писать формулу но очень сложно аналитически задать сколько в пределах каждых выбираемых 10 элементов будет вставляться элементов множества Bi (2 или 3). Причем вставляемые позиции всегда разные.
например
номера позиций относительно каждых 10-ти выбираемых элементов первого множества будут такими... именно их нужно получать в общей формуле .
страница 2 - позиции 2 6 10
стр 3 - позиции 4,8
стр 4 - позиции 2,6
стр 5 - позиции 1,5,9
стр 6 - позиции 3,7 и тд
пытаюсь вывести формулу , но ей подобные формулы (пробовал разные коэффициенты )
дают неверные результаты
Код:
//этот цикл проходит по всем 10 элементов (Ai ) каждой страницы (page)
foreach( Ai as n,Ai`)
{
if( ( page >=3 ) and (((page-2)*10+n +per_page*(page-2) )%5) ==0)
{
// вывести Bi
}
}
при выполнении этого условия нужно вставлять элементы множества Bi
and -логическое умножение
%- остаток от деления
== - сравнение на соответствие... то есть в этой формуле выражение во вторых скобках делится нацело на 5
это просто как пример незавершенного решения
per_page -количество данных которые выбираются из общего набора с количеством по per_page (2 или 3)...
для вычисления per_page - формулу еще не вывел, переменная per_page участвует в решении ограничения 5
page- номер выборки
n -номер выбираемого элемента из Аi (от 1 до 10) на каждом page
p.s. сама задача реальная, возникшая при программировании выдачи пагинированных списков разных данных на одной странице сайта