Solutions des défis algorithmiques du Codeforces Round 494 Division 3
Problème 1 : Fréquence du mode dans un tableau
Étant donné un tableau d'entiers, déterminer la fréquence maximale d'un élément, c'est-à-dire le nombre d'occurrences de la valeur la plus courante.
Approche : Utiliser un tableau de comptage pour enregistrer la fréquence de chaque élément, puis identifier le maximum.
#include <iostream>
#in ...
Publié le 10 juillet à 18h26
Programmation 0/1 : Optimisation par Recherche Binaire
La programmation 0/1, ou programmation fractionnaire 0/1, est une classe de problèmes d'optimisation. Elle implique la sélection d'un sous-ensemble d'éléments, où chaque élément a deux attributs, disons \(a_i\) et \(b_i\). L'objectif est de maximiser (ou minimiser) le ratio \(\frac{\sum a_i \times d_i}{\sum b_i \times d_i}\), sous certaines con ...
Publié le 21 juin à 02h38
Algorithmes LCA : Entraînement avec des problèmes introductifs
L'algorithme du plus ancêtre commun (LCA) est une technique fondamentale pour résoudre des problèmes de distance ou de relations dans des arbres. Cet article présente plusieurs problèmes d'entraînement pour maîtriser le LCA, avec des explications et des implémentations en C++.
Problème 1 : Distance entre maisons
Lien : HDU 2586
Description : Un ...
Publié le 17 juin à 17h54
Comptage des nœuds feuilles dans un arbre de hiérarchie familiale
Considérons une hiérarchie familiale modélisée par un arbre généalogique. L'objectif est de déterminer, pour chaque niveau de profondeur depuis la racine, le nombre de membres sans enfants (nœuds feuilles).
Spécification d'entrée : Chaque cas de test débute par une ligne contenant deux entiers N et M. N représente le nombre total de nœuds dans ...
Publié le 1 juin à 07h08
Décomposition en chaînes lourdes dans les arbres
Principe fondamental
Transformer un arbre en une séquence linéaire où n'importe quel chemin correspond à au plus O(log n) segments consécutifs.
Définitions essentielles
Fils lourd : enfant dont la sous-arbre contient le plus de nœuds
Fils léger : tout enfant n'étant pas fils lourd
Arête lourde : reliant un nœud à son fils lourd
Arête légère : ...
Publié le 31 mai à 07h30