3264. État final du tableau après k opérations de multiplication i
difficulté: facile
sujets: array, math, tas (file d'attente de priorité), simulation
vous avez un tableau entier nums, un entier k, et un multiplicateur entier.
Vous devez effectuer des k opérations sur nums. Dans chaque opération:
return un tableau entier dénotant l'état final de nums après avoir effectué toutes les k opérations .
Exemple 1:
| Opération | Résultat |
| ------------------- | ----------------- |
| Après l'opération 1 | [2, 2, 3, 5, 6] |
| Après l'opération 2 | [4, 2, 3, 5, 6] |
| Après l'opération 3 | [4, 4, 3, 5, 6] |
| Après l'opération 4 | [4, 4, 6, 5, 6] |
| Après l'opération 5 | [8, 4, 6, 5, 6] |
Exemple 2:
| Opération | Résultat |
| ------------------- | ----------------- |
| Après l'opération 1 | [2, 2, 3, 5, 6] |
| Après l'opération 2 | [4, 2, 3, 5, 6] |
| Après l'opération 3 | [4, 4, 3, 5, 6] |
| Après l'opération 4 | [4, 4, 6, 5, 6] |
| Après l'opération 5 | [8, 4, 6, 5, 6] |
contraintes:
Indice:
Solution:
Nous devons implémenter les opérations comme décrit dans l'instruction Problème. Les étapes de clé consistent à trouver la valeur minimale dans le tableau, à la remplacer par la valeur multipliée par le multiplicateur donné, puis à répéter ce processus k fois.
Étant donné que nous devons sélectionner la première occurrence de la valeur minimale et la remplacer, nous pouvons aborder ceci en gardant une trace de l'index de la valeur minimale pendant chaque opération. L'implémentation PHP utilisera une file d'attente prioritaire (min-heap) pour récupérer et mettre à jour efficacement la valeur minimale pendant chaque opération.
implémentons cette solution dans php: 3264. État final du tableau après k opérations de multiplication i
pour les cas de test fournis:
Saisir:
$nums = [2, 1, 3, 5, 6]; $k = 5; $multiplier = 2;
Sortir:
Output: [8, 4, 6, 5, 6]
Saisir:
$nums = [1, 2]; $k = 3; $multiplier = 4;
Sortir:
Output: [16, 8]
complexité temporelle :
Complexité spatiale :
Cette solution adhère aux contraintes et fournit les résultats attendus pour tous les cas de test.
liens de contact
Si vous avez trouvé cette série utile, veuillez envisager de donner le référentiel une étoile sur GitHub ou de partager le message sur vos réseaux sociaux préférés ?. Votre soutien signifierait beaucoup pour moi!
Si vous voulez un contenu plus utile comme celui-ci, n'hésitez pas à me suivre:
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3