Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Есть исходный код:

function BackTrace($srcarr, $cnt = 0, $arr = array(), $mask = array())

{

$length='10';

if ($cnt == $length) {

echo "'".implode('', $arr)."',". '
';

return; }

for ($i = 0; $i

if (!$mask[$i]) {

$mask[$i] = true;

$arr[$cnt] = $srcarr[$i];

BackTrace($srcarr, $cnt + 1, $arr, $mask);

$mask[$i] = false;

}

}

$srcarr = array('0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l');

BackTrace($srcarr);

Необходимо:

1) Исправить код, чтобы генерировались только комбинации вида: 010102323a, т.е. один символ должен повториться строго 3 раза(ни больше,ни меньше),второй,третий и четвертый символы по 2 раза(ни больше,ни меньше), остальные символы СТРОГО 1 раз. Строго генерация таких комбинаций (не принимается генерация всех возможных комбинаций из массива с условием выбора требуемых комбинаций из всего списка).

2) Избегать генерации вида: 000112233a,т.е. чтобы повторяющиеся символы не стояли рядом друг с другом.

3) Добавить переменные: Стартовая комбинация и Конечная комбинация. Пример:

$start = '010102323a';

$finish = '101023230a';

while ($string

{

...тело программы генерации...

}

13 лет назад
rekrow
Павел 
37 летРоссия
13 лет в сервисе
Был
13 лет назад