Как напечатать комбинации двух чисел с дефисом (-) из r элементов в заданном массиве размера n? - PullRequest
0 голосов
/ 04 ноября 2019

Следующий код optputs "2324 2325 2326 232324 2425 2426 242324 2526 252324 262324", но я хочу вывести вот так "23-24 23-25 ​​23-26 23-2324 24-25 24-26 24-2324 25-26 25-2324 26-2324 ", означает, что я хотел бы добавить дефис (-), чтобы четко знать комбинации.

<?php 
function printCombination($arr, 
                        $n, $r) 
{ 
    $data = array(); 
    combinationUtil($arr, $data, 0, 
                    $n - 1, 0, $r); 
} 

function combinationUtil($arr, $data, $start, 
                        $end, $index, $r) 

{ 
    if ($index == $r) 
    { 
        for ($j = 0; $j < $r; $j++) 
            echo $data[$j]; 
        echo "\n"; 
        return; 
    } 
    for ($i = $start; 
        $i <= $end && 
        $end - $i + 1 >= $r - $index; $i++) 
    { 
        $data[$index] = $arr[$i]; 
        combinationUtil($arr, $data, $i + 1, 
                        $end, $index + 1, $r); 
    } 
} 
$arr = array(23, 24, 25, 26, 2324); 
$r = 2; 
$n = sizeof($arr); 
printCombination($arr, $n, $r); 
?> 

...