Algorithmique : Fondamentaux de la Programmation Dynamique et Résolution du Sac à Dos
Concepts Fondamentaux et Distinction avec le Diviser pour Régner
La programmation dynamique (PD) est une méthode algorithmique conçue pour résoudre des problèmes d'optimisation. Bien qu'elle partage une similarité superficielle avec l'approche du diviser pour régner — toutes deux décomposant un problème complexe en sous-problèmes plus simple ...
Publié le 21 juin à 04h21
Notes de résolution de problèmes LeetCode (débutant)
Manipulations courantes
Chaînes de caractères
# Conversion ASCII
ord('A') # 65
chr(65) # 'A'
# Nettoyage
s = " hello\t\n"
s.strip() # "hello"
s.lstrip() # "hello\t\n"
s.rstrip() # " hello"
# Tests et transformations
"abc".isalpha() # True
"123".isnu ...
Publié le 21 juin à 00h34
Recueil de concours de simulation ZR 2025
Épreuves de qualification NOIP - 10 sessions d'entraînement
Jour 1
Problème 1
Énoncé :
Étant donné \(n\) nombres \(a_1,a_2,a_3 \dots a_n\), vous pouvez en sélectionner certains. Combien de façons permettent d'obtenir une moyenne égale à \(A\) pour les nombres sélectionnés ?
Solution
D'après la formule de la moyenne : (sélection de \(m\) nombres ...
Publié le 12 juin à 16h45
Analyse approfondie du Plus Long Sous-Ensemble Commun (LCS) : Algorithmes et optimisations en C
Introduction au problème LCS
La recherche de la Plus Longue Sous-Séquence Commune (LCS - Longest Common Subsequence) est un défi algorithmique classique. Contrairement à une sous-chaîne, les éléments d'une sous-séquence n'ont pas besoin d'être contigus dans les chaînes d'origine, mais ils doivent conserver leur ordre relatif. Ce concept est au ...
Publié le 29 mai à 18h52