주제: 조합 알고리즘: N개의 요소를 가진 배열 a가 있습니다. 이제 우리는 임의의 요소를 포함하는 모든 조합의 수를 찾아야 합니다.
답변: 먼저 규칙을 살펴보겠습니다.
이 배열이 배열(1,2,3,4,5)이고 M=5라고 가정합니다.
가능한 조합은 다음과 같습니다.
1 숫자 숫자; 조합 수: 5
숫자 2개 조합 수: 4 3 2 1
숫자 3개 조합 수: 3 2 1
숫자 4개 조합 수: 2 1
숫자 조합 수: 2 1 숫자 5개: 1
낯익은 것 같은데, 역순으로 보면 9*9 구구단입니다. 첫 번째 행에 M 조합이 있는 것을 제외하고 다른 조합은 곱셈표에 따라 처리되며 두 개의 FOR 문이 중첩됩니다.
코드:
코드 복사 코드는 다음과 같습니다.
$c = 5
$a = $c;for($i=1;$i<=$c;$ i ){
for($k=$c-$i;$k>0;$k–){
$a =$k
}
}
echo $a ;