Maison développement back-end tutoriel php Somme de plage des sommes de sous-tableaux triés

Somme de plage des sommes de sous-tableaux triés

Aug 05, 2024 pm 08:29 PM

Range Sum of Sorted Subarray Sums

1508. Somme de plage des sommes de sous-tableaux triés

Moyen

Vous recevez le tableau numérique composé de n entiers positifs. Vous avez calculé la somme de tous les sous-tableaux continus non vides du tableau, puis les avez triés dans un ordre non décroissant, créant un nouveau tableau de n * (n + 1) / 2 nombres.

Renvoyer la somme des nombres de l'index gauche à l'index droit (indexé à partir de 1), inclus, dans le nouveau tableau. Puisque la réponse peut être un nombre énorme, renvoyez-la modulo 109 + 7.

Exemple 1 :

  • Entrée : nums = [1,2,3,4], n = 4, gauche = 1, droite = 5
  • Sortie : 13
  • Explication : Toutes les sommes des sous-tableaux sont 1, 3, 6, 10, 2, 5, 9, 3, 7, 4. Après les avoir triées dans un ordre non décroissant, nous avons le nouveau tableau [1, 2, 3, 3, 4, 5, 6, 7, 9, 10]. La somme des nombres de l'indice le = 1 à ri = 5 est 1 + 2 + 3 + 3 + 4 = 13.

Exemple 2 :

  • Entrée : nums = [1,2,3,4], n = 4, gauche = 3, droite = 4
  • Sortie : 6
  • Explication : Le tableau donné est le même que celui de l'exemple 1. Nous avons le nouveau tableau [1, 2, 3, 3, 4, 5, 6, 7, 9, 10]. La somme des nombres de l'index le = 3 à ri = 4 est 3 + 3 = 6.

Exemple 3 :

  • Entrée : nums = [1,2,3,4], n = 4, gauche = 1, droite = 10
  • Sortie : 50

Contraintes :

  • n == nums.length
  • 1 <= nums.length <= 1000
  • 1 <= nums[i] <= 100
  • 1 <= gauche <= droite <= n * (n + 1) / 2

Indice :

  1. Calculez toutes les sommes et enregistrez-les dans un tableau.
  2. Ensuite, passez simplement de l'index GAUCHE à DROITE et calculez la réponse modulo 1e9 + 7.

Solution :

Pour résoudre ce problème, nous pouvons suivre ces étapes :

  1. Générez toutes les sommes possibles de sous-tableaux continus non vides.
  2. Triez le tableau de sommes obtenu.
  3. Calculez la somme des éléments de l'index de gauche à l'index de droite (basé sur 1).
  4. Renvoyer le résultat modulo 109 + 7.

Implémentons cette solution en PHP : 1508. Somme de plage des sommes de sous-tableaux triés






Explication:

  1. Génération de sommes de sous-tableaux :

    • Parcourez chaque index de départ i du sous-tableau.
    • Pour chaque index de départ i, calculez la somme des sous-tableaux se terminant à l'index j (où j >= i).
    • Ajoutez chaque somme de sous-tableau calculée au tableau $sums.
  2. Tri des sommes :

    • Utilisez la fonction sort() de PHP pour trier le tableau $sums dans un ordre non décroissant.
  3. Résumation de la plage requise :

    • Itérer de l'index gauche-1 à l'index droite-1 (puisque le problème utilise l'indexation basée sur 1).
    • Accumulez la somme des éléments de cette plage en prenant soin d'utiliser modulo 109 + 7 pour éviter les débordements.

Cette solution génère efficacement toutes les sommes des sous-tableaux, les trie et calcule la somme de plage requise comme spécifié.

Liens de contact

Si vous avez trouvé cette série utile, pensez à donner une étoile au référentiel sur GitHub ou à partager la publication sur vos réseaux sociaux préférés ?. Votre soutien signifierait beaucoup pour moi !

Si vous souhaitez du contenu plus utile comme celui-ci, n'hésitez pas à me suivre :

  • LinkedIn
  • GitHub

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment travailler avec des tableaux en php Comment travailler avec des tableaux en php Aug 20, 2025 pm 07:01 PM

Phparrayshandledatacollectionsefficantyusing indexedorassociativstructures; theyareCreated withArray () ou [], accessedViakeys, modifiedByAssigment, itérated withoreach, andmanipulatedUsingFunction

Formulaire contextuel sur le bouton de type d'article personnalisé avec tutoriel de soumission Ajax Formulaire contextuel sur le bouton de type d'article personnalisé avec tutoriel de soumission Ajax Aug 08, 2025 pm 11:09 PM

Ce tutoriel fournit des instructions détaillées sur la façon d'ajouter un bouton "Soumettre Quoation" à chaque article de WordPress dans une liste de types d'article personnalisée. Après avoir cliqué, un formulaire HTML personnalisé avec l'ID d'article apparaît et les données du formulaire sont l'affichage de la soumission et du message de réussite de l'AJAX. Le contenu couvre les paramètres pop-up de l'interface utilisateur jQuery frontal, le transfert de données dynamiques, le traitement de la demande AJAX, ainsi que la mise en œuvre de l'accrocheur AJAX WordPress et le traitement des données back-end, en garantissant des fonctions complètes, une expérience utilisateur sécurisée et bonne.

Comparez et contrastez les traits PHP, les classes abstraites et les interfaces avec les cas d'utilisation pratiques. Comparez et contrastez les traits PHP, les classes abstraites et les interfaces avec les cas d'utilisation pratiques. Aug 11, 2025 pm 11:17 PM

Utiliser une interfacestodefineContracts pour les classes liées, garantissant à ce que les implications spécifiques de la responsabilité; 2. ustractClassestoshareCommonLogicamongRelatedClasses whileenforcingInheritance; 3.UsetraTstoreUtyUtilityCodeAcrosses

Comment utiliser la variable $ _cookie en php Comment utiliser la variable $ _cookie en php Aug 20, 2025 pm 07:00 PM

$ _CookieisaphpsuperglobalForAccessingCooKiessentByThebrowser; cookiesAreSetingSetCooKie () BeforeOutput, ReadVia $ _cookie ['name'], Updated Resenderwithnewvalues, anddeletedBysetinganExpiredtimestamp, withsecurit

Décrivez le modèle de conception de l'observateur et sa mise en œuvre dans PHP. Décrivez le modèle de conception de l'observateur et sa mise en œuvre dans PHP. Aug 15, 2025 pm 01:54 PM

TheObserverdesignpatternenablesautomaticnotificationofdependentobjectswhenasubject'sstatechanges.1)Itdefinesaone-to-manydependencybetweenobjects;2)Thesubjectmaintainsalistofobserversandnotifiesthemviaacommoninterface;3)Observersimplementanupdatemetho

Formulaire contextuel du bouton d'article personnalisé WordPress avec guide de soumission Ajax Formulaire contextuel du bouton d'article personnalisé WordPress avec guide de soumission Ajax Aug 08, 2025 pm 11:06 PM

Ce didacticiel détaille comment ajouter un bouton de devis de soumission à l'élément de liste de chaque type de message personnalisé (tel que "immobilier") dans WordPress, et un formulaire HTML personnalisé avec un ID de publication spécifique apparaît après avoir cliqué. L'article couvrira comment créer des popups modaux à l'aide de la boîte de dialogue JQuery UI, passera dynamiquement l'ID de l'article via des attributs de données et utiliser le mécanisme WordPress Ajax pour implémenter la soumission asynchrone des formulaires, tout en traitement des téléchargements de fichiers et afficher les résultats de soumission, offrant ainsi une expérience utilisateur sans couture.

Expliquez les stratégies d'indexation de la base de données (par exemple, B-Tree, Text complet) pour une application PHP soutenue par MySQL. Expliquez les stratégies d'indexation de la base de données (par exemple, B-Tree, Text complet) pour une application PHP soutenue par MySQL. Aug 13, 2025 pm 02:57 PM

B-TreeIndexesAreBestFormostPhpapplications, AstheySupportequality andRangequeries, Tri, andareIdEalforColumnSuseInwhere, Join, OrorderByClauses; 2.Full-TextIndexessHouldFornaturAralLanguageorBooleanSearSonTextFieldslikeArlesorProductDescriptiiReScriptidScriptidiansearchesEnTextFieldslikeArlesorProductDescripti

Implémentez le formulaire pop-up et la soumission Ajax pour chaque bouton de publication personnalisé dans WordPress Implémentez le formulaire pop-up et la soumission Ajax pour chaque bouton de publication personnalisé dans WordPress Aug 08, 2025 pm 10:57 PM

Ce tutoriel fournira des instructions détaillées sur la façon d'implémenter un formulaire de soumission contextuel dans WordPress pour un bouton autonome pour chaque publication personnalisée (comme le type "immobilier"). Nous utiliserons la boîte de dialogue JQuery UI pour créer des boîtes modales et passerons dynamiquement l'ID de l'article via JavaScript. De plus, le tutoriel couvrira comment soumettre des données de formulaire via AJAX et gérer la logique backend sans rafraîchir la page, y compris les téléchargements de fichiers et les commentaires des résultats.

See all articles