Solutions des problèmes du concours Niuke Junior 107
A. Repas de Cidoai
Approche : Le problème consiste à appliquer une logique conditionnelle basée sur la valeur de n pour itérer sur des coûts spécifiques. On simule le processus de soustraction jusqu'à ce que la condition ne soit plus satisfaite.
Code AC :
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAX_N ...
Publié le 15 juillet à 14h19
Problème de la plus longue sous-séquence croissante
La programmation dynamique offre des solutions efficaces pour résoudre des problèmes d'optimisation combinatoire. Un classique est de déterminer la plus longue sous-séquence strictement croissante (LIS) dans une suite donnée. Cette section explore plusieurs approches algorithmiques, de la méthode naïve en O(n²) à l'optimisation en O(n log n), a ...
Publié le 15 juillet à 05h02
Défis de Programmation en C: Implémentation de Fonctions et Manipulation de Données
A. Fonction ReLU
La fonction d'activation Rectified Linear Unit (ReLU) est une fonction mathématique simple et largement utilisée en apprentissage automatique. Elle est définie de manière segmentée :
Si la valeur d'entrée \(x\) est inférieure ou égale à 0, la fonction retourne 0.
Si la valeur d'entrée \(x\) est supérieure à 0, la fonction reto ...
Publié le 14 juillet à 01h59
Les arbres de segments : principes et implémentations
Les arbres de segments sont une structure de données fondamentale pour les opérations sur les intervalles, permettant des modifications et requêtes en O(log n). Ils sont particulièrement utiles pour gérer des tableaux dynamiques avec des mises à jour et des calculs sur des plages conitnues.
Structure de base
Un arbre de segments est un arbre bi ...
Publié le 10 juillet à 23h28
Optimisation de Fonctions Unimodales par Ternary Search
La méthode de recherche ternaire est une technique algorithmique utilisée pour trouver l'extremum (minimum ou maximum) d'une fonction unimodale dans un intervalle donné. Elle étend le principe de la recherche binaire en divisant l'intervalle de recherche en trois parties au lieu de deux.
Principe de l'Algorithme
Pour une fonction unimodale (pré ...
Publié le 10 juillet à 19h02
Minimisation d'insertions pour former un palindrome via programmation dynamique
Énoncé du problème
Soit une chaîne de caractères. Une chaîne est dite palindromique lorsqu'elle est identique lue de gauche à droite et de droite à gauche (ex: "radar"). L'bojectif est de déterminer le nombre minimal d'insertions de caractères nécessaires pour transformer une chaîne quelconque en palindrome. Les insertions peuvent s'e ...
Publié le 9 juillet à 21h12
Améliorer la Fiabilité des Solutions d'Exercices Générées par LLM grâce à la Validation Croisée Multi-Modèles
Améliorer la Fiabilité des Solutions d'Exercices Générées par LLM grâce à la Validation Croisée Multi-Modèles
Les Défis de Fiabilité des Solutions LLM Individuelles : Hallucinations et Omissions Silencieuses
Les solutions d'exercices d'algorithmique produites par les grands modèles de langage (LLM) présentent deux types de risques insidieux. ...
Publié le 8 juillet à 06h06
Arbres binaires de recherche : Solutions pour les problèmes LeetCode 235, 701 et 450
Problème 235 : Ancestre commun le plus bas dans un arbre binaire de recherche
Approche : En exploitant la structure ordonnée des arbres binaires de recherche, nous déterminons l'ancestre commun en comparant la valeur du nœud courant avec les valeurs cibles. Si la valeur courante est supérieure aux deux cibles, nous explorons le sous-arbre gauch ...
Publié le 8 juillet à 01h11
Programmation dynamique en C++ : fondamentaux et résolution de problèmes
La programmation dynamique est une méthode algorithmique qui optimise la résolution de problèmes en les décomposant en sous-problèmes chevauchants, dont les solutions sont stockées pour éviter les recalculs. En C++, elle est couramment mise en œuvre à l'aide de tableaux pour mémoriser les états intermédiaires.
Calcul du nombre de chemins les pl ...
Publié le 6 juillet à 21h52
Le Principe d'Inclusion-Exclusion en Algorithmique
Le principe d'inclusion-exclusion (PIE) est une technique combinatoire fondamentale permettant de calculer le cardinal d'une union de plusieurs ensembles. En informatique, il est particulièrement efficace pour résoudre des problèmes de dénombrement où il est plus simple de compter le complémentaire d'un ensemble ou des intersections spécifiques ...
Publié le 4 juillet à 16h34