politonius
Новичок
Доброго времени.
Есть скрипт генерирует комбинации лото.
6 из 36 - еще выводит в массив. Записываю в файл
Как разбить выполнение скрипта. на 49 не хватает памяти вообще.
И попутный вопрос, как лучше хранить эти данные в бд или же в файлах.
Возможно есть другая логика хранения этих данных.
Есть скрипт генерирует комбинации лото.
$masInit = range(1, 49);
$result = [];
$combination = [];
function combinations([$myArray], $choose) {
global $result, $combination;
$n = count($myArray);
function inner ($start, $choose_, $arr, $n) {
global $result, $combination;
if ($choose_ == 0){
array_push($result,$combination);
}
else for ($i = $start; $i <= $n - $choose_; ++$i) {
array_push($combination, $arr[$i]);
inner($i + 1, $choose_ - 1, $arr, $n);
array_pop($combination);
}
}
inner(0, $choose, $myArray, $n);
return $result;
}
print_r(combinations($masInit, 6));
$result = [];
$combination = [];
function combinations([$myArray], $choose) {
global $result, $combination;
$n = count($myArray);
function inner ($start, $choose_, $arr, $n) {
global $result, $combination;
if ($choose_ == 0){
array_push($result,$combination);
}
else for ($i = $start; $i <= $n - $choose_; ++$i) {
array_push($combination, $arr[$i]);
inner($i + 1, $choose_ - 1, $arr, $n);
array_pop($combination);
}
}
inner(0, $choose, $myArray, $n);
return $result;
}
print_r(combinations($masInit, 6));
$masInit = range(1, 36);
$result = [];
$combination = [];
function combinations($myArray, $choose) {
global $result, $combination;
$n = count($myArray);
function inner ($start, $choose_, $arr, $n) {
global $result, $combination;
if ($choose_ == 0){
array_push($result,$combination);
} else{
for ($i = $start; $i <= $n - $choose_; ++$i) {
array_push($combination, $arr[$i]);
inner($i + 1, $choose_ - 1, $arr, $n);
array_pop($combination);
}
}
}
inner(0, $choose, $myArray, $n);
return $result;
}
$rm= combinations($masInit, 6);
unset($masInit);
$comb=[];
foreach ($rm as $v) {
$n=implode(",", $v);
//print_r ($n);
array_push($comb, $n);
}
file_put_contents('5_36.txt', print_r($comb, true));
$result = [];
$combination = [];
function combinations($myArray, $choose) {
global $result, $combination;
$n = count($myArray);
function inner ($start, $choose_, $arr, $n) {
global $result, $combination;
if ($choose_ == 0){
array_push($result,$combination);
} else{
for ($i = $start; $i <= $n - $choose_; ++$i) {
array_push($combination, $arr[$i]);
inner($i + 1, $choose_ - 1, $arr, $n);
array_pop($combination);
}
}
}
inner(0, $choose, $myArray, $n);
return $result;
}
$rm= combinations($masInit, 6);
unset($masInit);
$comb=[];
foreach ($rm as $v) {
$n=implode(",", $v);
//print_r ($n);
array_push($comb, $n);
}
file_put_contents('5_36.txt', print_r($comb, true));
И попутный вопрос, как лучше хранить эти данные в бд или же в файлах.
Возможно есть другая логика хранения этих данных.