Somme 1..n (python)
Calculer la somme des entiers de 1 à 6938 (formule close ou boucle). Une ligne stdout.
Énoncé
Calculez S = 1 + 2 + … + 6938.
Entrée : une ligne contenant l’entier 6938 (déjà fixé pour ce défi ; vous pouvez l’ignorer et coder en dur ou le relire pour vous entraîner).
Sortie : une ligne : la valeur décimale de S.
Contraintes réelles
- Entrée : une seule ligne sur stdin (format indiqué ci-dessus), sans espaces superflus en fin de ligne.
- Sortie : une seule ligne sur stdout, exactement la valeur demandée (pas de texte d’explication).
- python : bibliothèque standard uniquement ; pas d’accès réseau ni de fichiers autres que stdin/stdout.
- Complexité : respecter la borne indiquée dans l’énoncé (souvent O(n) ou O(n²) pour n ≤ 16).
Parcours pédagogique
- Piste : Suites et sommes (
serie-a-suites) — étape 1 sur cette famille. - Objectif : Appliquer la formule de Gauss pour la somme 1+2+…+n.
- Indice global : numéro de défi 526 / 10000 (famille 1/25, variante 22 / 400).
Indices
- Parsez stdin en types exacts (entier 64 bits signé si nécessaire).
- Testez sur papier avec les petites valeurs du gabarit.
- Vérifiez les cas limites mentionnés.
Solution possible
- Constater que S = n(n+1)/2 (Gauss) évite les boucles longues.
- Ici n = 6938, donc S = 24071391.
- En code générique : lire n, utiliser BigInt en Python/JS pour les grands n.
Pseudo-code (python)
# lire la ligne stdin → variables
# appliquer l’algorithme décrit
# print(resultat) # une ligne
Résultat de référence (tests automatisés)
La CI exécute la même logique que ce dépôt sur votre variante : la sortie attendue est exactement :
24071391
Référence (tests automatisés) : 24071391
Proposer une solution
Connectez-vous ou créez un compte pour envoyer votre texte (aucune exécution de code côté serveur).