/** * @depends testFact */ public function testCombinacao() { $resp = Approximation::calcCombination(52, 5); $this->assertEquals(2598960, $resp); $resp = Approximation::calcCombination(16, 3); $this->assertEquals(560, $resp); }
static function calcularComRegrasMaxVMSubProdOthers($scenario, $maxVM) { $indesejado = 0; $todas = array_product($scenario['rvm']); foreach ($scenario['rpm'] as $pmName => $pm) { $localUnwanted = 0; if ($pm > $maxVM) { $multi = Approximation::getOutsidersInsiders($pmName, $scenario)[0]; for ($i = $maxVM + 1; $i <= $pm; $i++) { $tmp = Approximation::calcCombination($pm, $i) * $multi; $localUnwanted += $tmp; } } $indesejado += $localUnwanted; } return $todas - $indesejado; }