826. La plupart des travaux d'affectation des bénéfices
Moyen
Vous avez n emplois et m travailleurs. Vous disposez de trois tableaux : difficulté, profit et travailleur où :
Chaque travailleur peut se voir attribuer au plus une tâche, mais une tâche peut être réalisée plusieurs fois.
Rendre le profit maximum que nous pouvons réaliser après avoir affecté les travailleurs aux emplois.
Exemple 1 :
Exemple 2 :
Contraintes :
Solution :
class Solution { /** * @param Integer[] $difficulty * @param Integer[] $profit * @param Integer[] $worker * @return Integer */ function maxProfitAssignment($difficulty, $profit, $worker) { $ans = 0; $jobs = array(); for ($i = 0; $i < count($difficulty); ++$i) { $jobs[] = array($difficulty[$i], $profit[$i]); } sort($jobs); sort($worker); $i = 0; $maxProfit = 0; foreach ($worker as $w) { for (; $i < count($jobs) && $w >= $jobs[$i][0]; ++$i) { $maxProfit = max($maxProfit, $jobs[$i][1]); } $ans += $maxProfit; } return $ans; } }Liens de contact
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!