スケジュールのすべての可能な組み合わせを見つける方法が必要です。長さによって異なる特定の日付のコースがあります。所定の週数があります。すべてのコースを含めて、重複することなく、すべての可能な組み合わせのソリューションを見つける必要があります。
$courses = array ("A", "B", "C", "D");
$duration = array (2, 3, 1, 2); // duration of $courses (in weeks)
$start_dates = array (
$courses[0] => array (1, 3, 5),
$courses[1] => array (1, 2, 5, 6),
$courses[2] => array (3, 4, 5, 9),
$courses[3] => array (1, 4, 8));
可能なすべての組み合わせを取得したいと思います。たとえば、次のようになります。
Week | Course
1 | A
2 | A
3 | C
4 | D
5 | D
6 | B
7 | B
8 | B
9 | -
10 | -
2 番目の組み合わせは、たとえば次のようになります。
Week | Course
1 | A
2 | A
3 | -
4 | C
5 | B
6 | B
7 | B
8 | D
9 | D
10 | -
好ましい出力は、次のように、week => course の配列になります。
$combinations = array (
0 => array (
1 => $courses[0],
2 => $courses[0],
3 => $courses[2],
4 => $courses[3],
...
),
1 => array (
1 => $courses[0],
2 => $courses[0],
4 => $courses[2],
5 => $courses[1],
6 => $courses[1],
7 => $courses[1],
...
)
);
私は本当にこの問題で立ち往生しています。どうもありがとうございました。