Principii fundamentale de numărare
Combinatorica e ramura matematicii care se ocupă cu numărarea obiectelor. Înainte de formule complexe, trei principii simple rezolvă majoritatea problemelor de numărare.
1. Principiul sumei
Dacă o acțiune poate fi făcută în
mmoduri sau înnmoduri (alternative care nu se suprapun), atunci numărul total de moduri em + n.
Exemple
Exemplul 1: Am 3 cărți de matematică și 4 cărți de informatică. În câte moduri pot alege o singură carte?
→ 3 + 4 = 7 moduri.
Exemplul 2: Câte numere între 1 și 100 sunt divizibile cu 2 sau cu 3?
Atenție - unele numere sunt divizibile cu amândouă (6, 12, 18…). Principiul sumei nu se aplică direct. Avem nevoie de PInEx (principiul includerii-excluderii).
Condiția cheie: mulțimile să fie disjuncte
Principiul sumei funcționează doar dacă alternativele nu se suprapun. Dacă se suprapun, folosești PInEx.
2. Principiul produsului
Dacă o acțiune e făcută în două etape, prima având
mopțiuni și a doua avândnopțiuni (independent), numărul total de moduri em * n.
Exemple
Exemplul 1: Am 3 tricouri și 4 pantaloni. Câte ținute distincte pot forma?
→ 3 * 4 = 12 ținute.
Exemplul 2: Câte cuvinte de 4 litere (distincte) se pot forma din alfabet (26 litere)?
→ 26 * 25 * 24 * 23 = 358800 cuvinte (prima
literă 26 opțiuni, a doua 25 - nu o repet, etc).
Exemplul 3: Câte numere de telefon de 7 cifre sunt?
→ 10^7 = 10.000.000 (fiecare cifră din 10,
independent).
Generalizare
Dacă ai k etape cu n₁, n₂, ..., nₖ
opțiuni fiecare:
Total = n₁ * n₂ * ... * nₖ
3. Principiul lui Dirichlet (Pigeonhole)
Dacă pui
n + 1obiecte înncutii, cel puțin o cutie va conține cel puțin 2 obiecte.
Sună banal, dar e extrem de puternic pentru demonstrații.
Exemple clasice
Exemplul 1: Într-o clasă de 367 elevi, cel puțin 2 au ziua de naștere în aceeași zi a anului.
De ce? Avem 366 zile posibile (inclusiv 29 februarie) și 367 elevi. Mai mult decât zile → doi trebuie să împartă o zi.
Exemplul 2: Într-un grup de 13 oameni, cel puțin 2 se nasc în aceeași lună.
12 luni, 13 oameni → ⌈13/12⌉ = 2.
Exemplul 3: Într-un grup de 6 oameni, sigur există 3 care se cunosc sau 3 care nu se cunosc.
(Teorema lui Ramsey pentru 6 - demonstrată cu Dirichlet).
Forma generalizată
Dacă pui
kn + 1obiecte înncutii, cel puțin o cutie conține cel puțink + 1obiecte.
Exemplu: 25 bile în 6 cutii → cel puțin o
cutie are ⌈25/6⌉ = 5 bile.
Trucul lui Dirichlet: când problema spune “demonstrați că există…”, încearcă să identifici ce sunt “obiectele” și ce sunt “cutiile”. Apoi folosește principiul.
Combinarea principiilor
Majoritatea problemelor combină aceste principii.
Exemplu: parole
Câte parole de 4 caractere se pot forma dacă: - Primul caracter e literă mare sau mică (26 + 26 = 52 opțiuni - sumă) - Celelalte 3 sunt litere sau cifre (52 + 10 = 62 fiecare - sumă)
Total:
52 * 62 * 62 * 62 = 52 * 62^3 = 12.388.736 parole
(produs).
Exemplu de cod: calculăm numărul de moduri
#include <fstream>
using namespace std;
ifstream fin("date.in");
ofstream fout("date.out");
int main() {
int n, m;
fin >> n >> m;
// Exemplu: n tipuri de haine de top, m tipuri de pantaloni
fout << "Tinute posibile: " << (long long)n * m << "\n";
return 0;
}date.in:
3 4date.out:
Tinute posibile: 12Cum recunoști ce principiu să folosești?
| Întrebare | Principiu |
|---|---|
| “Câte moduri sunt în total?” + alternative disjuncte | Suma |
| “Câte moduri sunt?” + alegeri succesive independente | Produs |
| “Demonstrați că există…” | Dirichlet |
| “Câte moduri sunt?” + alternative care se suprapun | PInEx |
Greșeli frecvente
1. Suma când trebuie produs
“Aleg o cămașă dintre 3 și pantaloni dintre 4” → ÎNMULȚEȘTI, nu aduni. Total 12 ținute.
“Aleg o cămașă sau o bluză” → ADUNI.
Cuvântul cheie: și = produs, sau (exclusiv) = sumă.
2. Uitarea repetițiilor
“Câte numere de 3 cifre sunt?” Dacă cifra repetă:
9 * 10 * 10 = 900 (prima nu poate fi 0). Dacă cifra
NU repetă: 9 * 9 * 8 = 648.
Citește atent - se permite repetiția?
3. Dirichlet - “cel puțin”
n+1 în n garantează cel
puțin 2, nu exact 2. Poate fi și 10, 100, etc.
Ce să reții
- Principiul sumei: alternative disjuncte → adună numărul de opțiuni.
- Principiul produsului: etape independente → înmulțește numărul de opțiuni.
- Principiul lui Dirichlet:
n+1obiecte înncutii → cel puțin 2 într-o cutie. - Produs = “și”, Sumă = “sau” (exclusiv).
- Pentru alternative care se suprapun, folosește PInEx.
- Dirichlet e minunat pentru demonstrații de existență.