Aller au contenu

Deux Somme (Two Sum)

Dictionnaires

Exercice Intermédiaire · Algo Express · prepa scientifique et economique (CPGE)

Enonce

Écrire une fonction qui prend une liste d'entiers L et un entier cible, et renvoie un tuple (i, j) avec i < j tels que L[i] + L[j] == cible. Si aucune paire n'existe, renvoyer (-1, -1).

deux_somme([2, 7, 11, 15], 9)  → (0, 1)
deux_somme([3, 2, 4], 6)        → (1, 2)
deux_somme([1, 2, 3], 10)       → (-1, -1)

Signature attendue

def deux_somme(L: list, cible: int) -> tuple:

Exemples

  • deux_somme([2, 7, 11, 15], 9) → (0, 1)
  • deux_somme([3, 2, 4], 6) → (1, 2)
  • deux_somme([1, 2, 3], 10) → (-1, -1)

Dictionnaire comme table de hachage

En utilisant un dictionnaire comme table de correspondance valeur → indice, on peut résoudre le problème Two Sum en un seul parcours O(n) au lieu de la double boucle naïve O(n²). Pour chaque élément, on vérifie si son complément est déjà dans le dictionnaire.

← Exercices Python pour la prépa — CPGE scientifique et ECG

Exercices du meme theme

  • Produit Matriciel
  • Inverser un Dictionnaire
  • Regrouper par Valeur
  • Histogramme de Mots
  • Cache LRU Simplifié
  • Diagonale Principale

La correction commentee, les indices progressifs, l'execution du code dans le navigateur et la verification par l'IA sont reserves aux abonnes.

Prepa🐍ython
Progresser en Python & SQL · Prépa scientifique
Essai gratuit
Testez toutes les fonctionnalités sans engagement
En continuant, vous acceptez notre politique de confidentialité.
Déjà abonné ? Se reconnecter
Recevez un lien de connexion par email
Parcourir gratuitement →
Aperçu limité · sans inscription · sans vérification IA
€4,99
/ mois · accès illimité · résiliable
Paiement sécurisé
En vous abonnant, vous acceptez nos conditions et politique de confidentialité.
Résiliation possible depuis votre espace PayPal.

Chargement...

Initialisation de l'environnement

Prepa🐍ython
Progresser en Python & SQL · Prépa scientifique
Progression
0 / 0
Solo
— / —
Python... SQL...
Recherche
🔬 Bac a sable Python ↗ 🧪 Bac a sable SQL ↗ 📝 Concours blanc ↗ 🏖️ Code à la plage ↗ 📚 Listes de rentrée ↗ 🛠️ Admin ↗
Tu aimes PrepaPython ?
Fais-le savoir !
← Retour à l'accueil Mentions legales & confidentialite