Solutions d'algorithmique pour le concours Niuke Round 139

A. Validation d'une chaîne « red » L'objectif est de vérifier si une chaîne de caractères donnée se compose exclusivement des lettres 'r', 'e' et 'd'. Une approche par énumération directe de chaque caractère suffit. #include <iostream> #include <string> using namespace std; int main() { ios_base::sync_with_stdio(false); ci ...

Publié le 25 juin à 21h11

Implémentation et Optimisation de la Structure Union-Find en C++

Introduction aux Ensembles Disjoints La structure de données Union-Find (ou ensembles disjoints) est un type abstrait de données arborescent conçu pour gérer efficacement une collection de partitions. Elle prend en charge deux opérations fondamentales de manière optimale : Union : Fusionner deux ensembles distincts en un seul. Find : Détermine ...

Publié le 25 juin à 04h56

Solutions de l'ARC 107 d'AtCoder en C++

Problème A : Somme de Produits Triangulaires Description : Étant donné trois entiers positifs \(A\), \(B\) et \(C\), calculer la valeur modulo \(998244353\) de la somme triple \(\sum_{a=1}^{A} \sum_{b=1}^{B} \sum_{c=1}^{C} a \times b \times c\). Solution : La somme se factorise en \(\left( \sum_{a=1}^{A} a \right) \times \left( \sum_{b=1}^{B} b ...

Publié le 21 juin à 00h51

Notes sur les algorithmes : résolution de problèmes avec arbres de segments et techniques connexes

Problème 0112G : Sous-séquence et carré de la diversité Énoncé Soit une séquence d'entiers positifs \(A_1, A_2, \dots, A_n\). On définit \(f(l,r)\) comme la taille de l'ensemble distinct \(\{A_l, A_{l+1}, \dots, A_r\}\). Calculer \(\sum_{l=1}^n \sum_{r=l}^n (f(l,r))^2 \mod 10^9+7\). Approche Commençons par le calcul de \(\sum_{l=1}^n\sum_{r=l}^ ...

Publié le 3 juin à 23h26