Sunteți pe pagina 1din 88

Generarea si ordonarea permutarilor.

Principiul porumbeilor.
Principiul incluziunii si excluziunii
10 octombrie 2013
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Recapitulare din cursul trecut
Presupunem ca A este o mult ime cu n elemente.
Un aranjament de n luate cate r (sau r -permutare) a lui A
este o secvent a ordonata de elemente din A.
O permutare a lui A este o secvent a ordonata a tuturor
elementelor din A.
O combinare de n luate cate r a lui A este o submult ime cu r
elemente din A.
Exemplu (A = a
1
, a
2
, a
3
)
2-permutarile lui A sunt (ordinea conteaza!):
a
1
, a
2
, a
2
, a
1
, a
1
, a
3
, a
3
, a
1
, a
2
, a
3
, a
3
, a
1

2-combinarile lui A sunt (ordinea nu conteaza!):


a
1
, a
2
, a
1
, a
3
, a
2
, a
3

Permutarile lui A sunt:


a
1
, a
2
, a
3
, a
1
, a
3
, a
2
, a
2
, a
1
, a
3
, a
2
, a
3
, a
1
,
a
3
, a
1
, a
2
, a
3
, a
2
, a
1

Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii


Recapitulare din cursul trecut
Presupunem ca A este o mult ime cu n elemente.
Un aranjament de n luate cate r (sau r -permutare) a lui A
este o secvent a ordonata de elemente din A.
O permutare a lui A este o secvent a ordonata a tuturor
elementelor din A.
O combinare de n luate cate r a lui A este o submult ime cu r
elemente din A.
Exemplu (A = a
1
, a
2
, a
3
)
2-permutarile lui A sunt (ordinea conteaza!):
a
1
, a
2
, a
2
, a
1
, a
1
, a
3
, a
3
, a
1
, a
2
, a
3
, a
3
, a
1

2-combinarile lui A sunt (ordinea nu conteaza!):


a
1
, a
2
, a
1
, a
3
, a
2
, a
3

Permutarile lui A sunt:


a
1
, a
2
, a
3
, a
1
, a
3
, a
2
, a
2
, a
1
, a
3
, a
2
, a
3
, a
1
,
a
3
, a
1
, a
2
, a
3
, a
2
, a
1

Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii


Recapitulare din cursul trecut
Presupunem ca A este o mult ime cu n elemente.
Un aranjament de n luate cate r (sau r -permutare) a lui A
este o secvent a ordonata de elemente din A.
O permutare a lui A este o secvent a ordonata a tuturor
elementelor din A.
O combinare de n luate cate r a lui A este o submult ime cu r
elemente din A.
Exemplu (A = a
1
, a
2
, a
3
)
2-permutarile lui A sunt (ordinea conteaza!):
a
1
, a
2
, a
2
, a
1
, a
1
, a
3
, a
3
, a
1
, a
2
, a
3
, a
3
, a
1

2-combinarile lui A sunt (ordinea nu conteaza!):


a
1
, a
2
, a
1
, a
3
, a
2
, a
3

Permutarile lui A sunt:


a
1
, a
2
, a
3
, a
1
, a
3
, a
2
, a
2
, a
1
, a
3
, a
2
, a
3
, a
1
,
a
3
, a
1
, a
2
, a
3
, a
2
, a
1

Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii


Recapitulare din cursul trecut
Presupunem ca A este o mult ime cu n elemente.
Un aranjament de n luate cate r (sau r -permutare) a lui A
este o secvent a ordonata de elemente din A.
O permutare a lui A este o secvent a ordonata a tuturor
elementelor din A.
O combinare de n luate cate r a lui A este o submult ime cu r
elemente din A.
Exemplu (A = a
1
, a
2
, a
3
)
2-permutarile lui A sunt (ordinea conteaza!):
a
1
, a
2
, a
2
, a
1
, a
1
, a
3
, a
3
, a
1
, a
2
, a
3
, a
3
, a
1

2-combinarile lui A sunt (ordinea nu conteaza!):


a
1
, a
2
, a
1
, a
3
, a
2
, a
3

Permutarile lui A sunt:


a
1
, a
2
, a
3
, a
1
, a
3
, a
2
, a
2
, a
1
, a
3
, a
2
, a
3
, a
1
,
a
3
, a
1
, a
2
, a
3
, a
2
, a
1

Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii


Recapitulare din cursul trecut
Presupunem ca A este o mult ime cu n elemente.
Un aranjament de n luate cate r (sau r -permutare) a lui A
este o secvent a ordonata de elemente din A.
O permutare a lui A este o secvent a ordonata a tuturor
elementelor din A.
O combinare de n luate cate r a lui A este o submult ime cu r
elemente din A.
Exemplu (A = a
1
, a
2
, a
3
)
2-permutarile lui A sunt (ordinea conteaza!):
a
1
, a
2
, a
2
, a
1
, a
1
, a
3
, a
3
, a
1
, a
2
, a
3
, a
3
, a
1

2-combinarile lui A sunt (ordinea nu conteaza!):


a
1
, a
2
, a
1
, a
3
, a
2
, a
3

Permutarile lui A sunt:


a
1
, a
2
, a
3
, a
1
, a
3
, a
2
, a
2
, a
1
, a
3
, a
2
, a
3
, a
1
,
a
3
, a
1
, a
2
, a
3
, a
2
, a
1

Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii


Recapitulare din cursul trecut
Presupunem ca A este o mult ime cu n elemente.
Un aranjament de n luate cate r (sau r -permutare) a lui A
este o secvent a ordonata de elemente din A.
O permutare a lui A este o secvent a ordonata a tuturor
elementelor din A.
O combinare de n luate cate r a lui A este o submult ime cu r
elemente din A.
Exemplu (A = a
1
, a
2
, a
3
)
2-permutarile lui A sunt (ordinea conteaza!):
a
1
, a
2
, a
2
, a
1
, a
1
, a
3
, a
3
, a
1
, a
2
, a
3
, a
3
, a
1

2-combinarile lui A sunt (ordinea nu conteaza!):


a
1
, a
2
, a
1
, a
3
, a
2
, a
3

Permutarile lui A sunt:


a
1
, a
2
, a
3
, a
1
, a
3
, a
2
, a
2
, a
1
, a
3
, a
2
, a
3
, a
1
,
a
3
, a
1
, a
2
, a
3
, a
2
, a
1

Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii


Recapitulare din cursul trecut
Presupunem ca A este o mult ime cu n elemente.
Un aranjament de n luate cate r (sau r -permutare) a lui A
este o secvent a ordonata de elemente din A.
O permutare a lui A este o secvent a ordonata a tuturor
elementelor din A.
O combinare de n luate cate r a lui A este o submult ime cu r
elemente din A.
Exemplu (A = a
1
, a
2
, a
3
)
2-permutarile lui A sunt (ordinea conteaza!):
a
1
, a
2
, a
2
, a
1
, a
1
, a
3
, a
3
, a
1
, a
2
, a
3
, a
3
, a
1

2-combinarile lui A sunt (ordinea nu conteaza!):


a
1
, a
2
, a
1
, a
3
, a
2
, a
3

Permutarile lui A sunt:


a
1
, a
2
, a
3
, a
1
, a
3
, a
2
, a
2
, a
1
, a
3
, a
2
, a
3
, a
1
,
a
3
, a
1
, a
2
, a
3
, a
2
, a
1

Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii


Recapitulare din cursul trecut
Presupunem ca A este o mult ime cu n elemente.
Un aranjament de n luate cate r (sau r -permutare) a lui A
este o secvent a ordonata de elemente din A.
O permutare a lui A este o secvent a ordonata a tuturor
elementelor din A.
O combinare de n luate cate r a lui A este o submult ime cu r
elemente din A.
Exemplu (A = a
1
, a
2
, a
3
)
2-permutarile lui A sunt (ordinea conteaza!):
a
1
, a
2
, a
2
, a
1
, a
1
, a
3
, a
3
, a
1
, a
2
, a
3
, a
3
, a
1

2-combinarile lui A sunt (ordinea nu conteaza!):


a
1
, a
2
, a
1
, a
3
, a
2
, a
3

Permutarile lui A sunt:


a
1
, a
2
, a
3
, a
1
, a
3
, a
2
, a
2
, a
1
, a
3
, a
2
, a
3
, a
1
,
a
3
, a
1
, a
2
, a
3
, a
2
, a
1

Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii


Operat ii cu aranjamente si permutari

In prima parte a acestui curs vom nvat a:


Cum sa ordonam permutarile ncat sa putem vorbi despre
prima permutare, a doua, etc.
Cum sa generam permutarea care urmeaza dupa o permutare
data
Cum sa generam direct a k-a permutare
Cum sa determinam a cata este o permutare data
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Relat ii de ordine pentru r -permutari
Presupunem ca A este o mult ime nita cu n elemente.
1
Mai ntai ordonam elementele mult imii A
A = a
1
, a
2
, . . . , a
n
unde
a
1
= primul element
. . .
a
n
= al n-lea element.
A devine o mult ime ordonata (un alfabet) n care
a
1
< a
2
< . . . < a
n
.
2
r -permutarile sunt cuvinte b
1
, ..., b
r
de lungime r pe care le
ordonam ca si cuvintele din dict ionar, de exemplu:
a
1
, a
2
< a
1
, a
3
< a
2
, a
1
< . . .
Aceasta ordonare a r -permutarilor se numeste ordonare
lexicograca:
b
1
, . . . , b
r
< c
1
, . . . , c
r
daca exista o pozit ie k astfel ncat
b
i
= c
i
pentru 1 i < k, si b
k
< c
k
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Relat ii de ordine pentru r -permutari
Observat ii preliminare
Fie A = a
1
, . . . , a
n
o mult ime ordonata cu a
1
< . . . < a
n
si N = 1, 2, . . . , n.
1
r -permutarile lui A sunt cuvinte de forma a
i
1
, . . . , a
i
r
cu
i
1
, . . . , i
r
N.
2
a
i
1
, . . . , a
i
r
este o r -permutate a lui A daca si numai daca
(i
1
, . . . , i
r
) este o r -permutare a lui N.
3
a
i
1
, . . . , a
i
r
< a
j
1
, . . . , a
j
r
daca si numai daca
i
1
, . . . , i
r
< j
1
, . . . , j
r
.
este sucient sa stim cum sa ordonam si sa enumeram
r -permutari de numere din mult imea N.
De acum ncolo vom considera doar r -permutari ale mult imii
ordonate A = 1, . . . , n.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Rangul unei r -permutari
Rangul unei r -permutari este pozit ia la care apare r -permutarea n
ordine lexicograca, pornind de la pozit ia 0.
Exemplu (A = 1, 2, 3)
2-permutare rang permutare rang
1, 2 0 1, 2, 3 0
1, 3 1 1, 3, 2 1
2, 1 2 2, 1, 3 2
2, 3 3 2, 3, 1 3
3, 1 4 3, 1, 2 4
3, 2 5 3, 2, 1 5
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Enumerarea permutarilor n ordine lexicograca
Problema
Cum putem calcula permutarea lui N = 1, . . . , n care urmeaza
dupa permutarea p
1
, . . . , p
n
n ordine lexicograca?
Exemplu (N = 1, 2, 3, 4, 5)
permutare permutare urmatoare
5, 1, 3, 2, 4
5, 1, 3, 4, 2
5, 2, 4, 3, 1
5, 3, 1, 2, 4
5, 4, 3, 2, 1
nu exista
Permutarea care urmeaza dupa p
1
, . . . , p
n
se poate calcula astfel:
1
Determina i astfel ncat p
i
> . . . > p
n
este cel mai lung sux
descrescator al permutarii p
1
, . . . , p
n

2
Detemina j i astfel ncat p
j
este cel mai mic numar mai mare
decat p
i 1
.
3
Permuta p
j
cu p
i 1
, si apoi inverseaza suxul p
i
, . . . , p
n
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Enumerarea permutarilor n ordine lexicograca
Problema
Cum putem calcula permutarea lui N = 1, . . . , n care urmeaza
dupa permutarea p
1
, . . . , p
n
n ordine lexicograca?
Exemplu (N = 1, 2, 3, 4, 5)
permutare permutare urmatoare
5, 1, 3, 2, 4 5, 1, 3, 4, 2
5, 2, 4, 3, 1
5, 3, 1, 2, 4
5, 4, 3, 2, 1
nu exista
Permutarea care urmeaza dupa p
1
, . . . , p
n
se poate calcula astfel:
1
Determina i astfel ncat p
i
> . . . > p
n
este cel mai lung sux
descrescator al permutarii p
1
, . . . , p
n

2
Detemina j i astfel ncat p
j
este cel mai mic numar mai mare
decat p
i 1
.
3
Permuta p
j
cu p
i 1
, si apoi inverseaza suxul p
i
, . . . , p
n
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Enumerarea permutarilor n ordine lexicograca
Problema
Cum putem calcula permutarea lui N = 1, . . . , n care urmeaza
dupa permutarea p
1
, . . . , p
n
n ordine lexicograca?
Exemplu (N = 1, 2, 3, 4, 5)
permutare permutare urmatoare
5, 1, 3, 2, 4 5, 1, 3, 4, 2
5, 2, 4, 3, 1 5, 3, 1, 2, 4
5, 4, 3, 2, 1
nu exista
Permutarea care urmeaza dupa p
1
, . . . , p
n
se poate calcula astfel:
1
Determina i astfel ncat p
i
> . . . > p
n
este cel mai lung sux
descrescator al permutarii p
1
, . . . , p
n

2
Detemina j i astfel ncat p
j
este cel mai mic numar mai mare
decat p
i 1
.
3
Permuta p
j
cu p
i 1
, si apoi inverseaza suxul p
i
, . . . , p
n
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Enumerarea permutarilor n ordine lexicograca
Problema
Cum putem calcula permutarea lui N = 1, . . . , n care urmeaza
dupa permutarea p
1
, . . . , p
n
n ordine lexicograca?
Exemplu (N = 1, 2, 3, 4, 5)
permutare permutare urmatoare
5, 1, 3, 2, 4 5, 1, 3, 4, 2
5, 2, 4, 3, 1 5, 3, 1, 2, 4
5, 4, 3, 2, 1 nu exista
Permutarea care urmeaza dupa p
1
, . . . , p
n
se poate calcula astfel:
1
Determina i astfel ncat p
i
> . . . > p
n
este cel mai lung sux
descrescator al permutarii p
1
, . . . , p
n

2
Detemina j i astfel ncat p
j
este cel mai mic numar mai mare
decat p
i 1
.
3
Permuta p
j
cu p
i 1
, si apoi inverseaza suxul p
i
, . . . , p
n
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Enumerarea permutarilor n ordine lexicograca
Problema
Cum putem calcula permutarea lui N = 1, . . . , n care urmeaza
dupa permutarea p
1
, . . . , p
n
n ordine lexicograca?
Exemplu (N = 1, 2, 3, 4, 5)
permutare permutare urmatoare
5, 1, 3, 2, 4 5, 1, 3, 4, 2
5, 2, 4, 3, 1 5, 3, 1, 2, 4
5, 4, 3, 2, 1 nu exista
Permutarea care urmeaza dupa p
1
, . . . , p
n
se poate calcula astfel:
1
Determina i astfel ncat p
i
> . . . > p
n
este cel mai lung sux
descrescator al permutarii p
1
, . . . , p
n

2
Detemina j i astfel ncat p
j
este cel mai mic numar mai mare
decat p
i 1
.
3
Permuta p
j
cu p
i 1
, si apoi inverseaza suxul p
i
, . . . , p
n
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Enumerarea permutarilor n ordine lexicograca
Problema
Cum putem calcula permutarea lui N = 1, . . . , n care urmeaza
dupa permutarea p
1
, . . . , p
n
n ordine lexicograca?
Exemplu (N = 1, 2, 3, 4, 5)
permutare permutare urmatoare
5, 1, 3, 2, 4 5, 1, 3, 4, 2
5, 2, 4, 3, 1 5, 3, 1, 2, 4
5, 4, 3, 2, 1 nu exista
Permutarea care urmeaza dupa p
1
, . . . , p
n
se poate calcula astfel:
1
Determina i astfel ncat p
i
> . . . > p
n
este cel mai lung sux
descrescator al permutarii p
1
, . . . , p
n

2
Detemina j i astfel ncat p
j
este cel mai mic numar mai mare
decat p
i 1
.
3
Permuta p
j
cu p
i 1
, si apoi inverseaza suxul p
i
, . . . , p
n
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Enumerarea permutarilor n ordine lexicograca
Problema
Cum putem calcula permutarea lui N = 1, . . . , n care urmeaza
dupa permutarea p
1
, . . . , p
n
n ordine lexicograca?
Exemplu (N = 1, 2, 3, 4, 5)
permutare permutare urmatoare
5, 1, 3, 2, 4 5, 1, 3, 4, 2
5, 2, 4, 3, 1 5, 3, 1, 2, 4
5, 4, 3, 2, 1 nu exista
Permutarea care urmeaza dupa p
1
, . . . , p
n
se poate calcula astfel:
1
Determina i astfel ncat p
i
> . . . > p
n
este cel mai lung sux
descrescator al permutarii p
1
, . . . , p
n

2
Detemina j i astfel ncat p
j
este cel mai mic numar mai mare
decat p
i 1
.
3
Permuta p
j
cu p
i 1
, si apoi inverseaza suxul p
i
, . . . , p
n
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Enumerarea permutarilor n ordine lexicograca
Problema
Cum putem calcula permutarea lui N = 1, . . . , n care urmeaza
dupa permutarea p
1
, . . . , p
n
n ordine lexicograca?
Exemplu (N = 1, 2, 3, 4, 5)
permutare permutare urmatoare
5, 1, 3, 2, 4 5, 1, 3, 4, 2
5, 2, 4, 3, 1 5, 3, 1, 2, 4
5, 4, 3, 2, 1 nu exista
Permutarea care urmeaza dupa p
1
, . . . , p
n
se poate calcula astfel:
1
Determina i astfel ncat p
i
> . . . > p
n
este cel mai lung sux
descrescator al permutarii p
1
, . . . , p
n

2
Detemina j i astfel ncat p
j
este cel mai mic numar mai mare
decat p
i 1
.
3
Permuta p
j
cu p
i 1
, si apoi inverseaza suxul p
i
, . . . , p
n
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Operat ii cu permutari
Enumerarea permutarilor n ordine lexicograca
Exemplu
5, 2, 4, 3, 1 5, 3, 4, 2, 1
p
1
, p
2
, p
3
, p
4
, p
5
= 5, 2, 4, 3, 1
i = 3
j = 4
permuta p
i 1
= 2 cu p
j
= 3
inverseaza p
i
, . . . , p
n
= 4, 2, 1
5, 3, 1, 2, 4
= permutarea urmatoare
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Operat ii cu permutari
Enumerarea permutarilor n ordine lexicograca
Exemplu
5, 2, 4, 3, 1
5, 3, 4, 2, 1
p
1
, p
2
, p
3
, p
4
, p
5
= 5, 2, 4, 3, 1
i = 3
j = 4
permuta p
i 1
= 2 cu p
j
= 3
inverseaza p
i
, . . . , p
n
= 4, 2, 1
5, 3, 1, 2, 4
= permutarea urmatoare
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Operat ii cu permutari
Enumerarea permutarilor n ordine lexicograca
Exemplu
5, 2, 4, 3, 1
5, 3, 4, 2, 1
p
1
, p
2
, p
3
, p
4
, p
5
= 5, 2, 4, 3, 1
i = 3
j = 4
permuta p
i 1
= 2 cu p
j
= 3
inverseaza p
i
, . . . , p
n
= 4, 2, 1
5, 3, 1, 2, 4
= permutarea urmatoare
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Operat ii cu permutari
Enumerarea permutarilor n ordine lexicograca
Exemplu
5, 2, 4, 3, 1
5, 3, 4, 2, 1
p
1
, p
2
, p
3
, p
4
, p
5
= 5, 2, 4, 3, 1
i = 3
j = 4
permuta p
i 1
= 2 cu p
j
= 3
inverseaza p
i
, . . . , p
n
= 4, 2, 1
5, 3, 1, 2, 4
= permutarea urmatoare
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Operat ii cu permutari
Enumerarea permutarilor n ordine lexicograca
Exemplu
5, 2, 4, 3, 1 5, 3, 4, 2, 1
p
1
, p
2
, p
3
, p
4
, p
5
= 5, 2, 4, 3, 1
i = 3
j = 4
permuta p
i 1
= 2 cu p
j
= 3
inverseaza p
i
, . . . , p
n
= 4, 2, 1
5, 3, 1, 2, 4
= permutarea urmatoare
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Enumerarea permutarilor n ordine lexicograca
Pseudocod
PermutareUrmatoare(p: int[0 .. n 1])
i := n 2;
while (p[i ] > p[i + 1])
i --;
j := n 1;
while (p[j ] < p[i ])
j --;
// permuta valorile lui p[i ] si p[j ]
tmp := p[i ];
p[i ] := p[j ];
p[j ] := tmp;
// inverseaza (p[i+1], ..., p[n-1])
for (k := 0; k < (n i 1)/2|; k++)
// swap p[i + 1 + k] with p[n 1 k]
tmp := p[i + 1 + k];
p[i + 1 + k] := p[n 1 k];
p[n 1 k] := tmp;
return p;
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Operat ii cu permutari
Probleme
1
Cum putem calcula direct si ecient rangul unei permutari
p
1
, . . . , p
n
a lui N = 1, . . . , n ntr-o enumerare
lexicograca?
2
Cum putem calcula direct si ecient permutarea p
1
, . . . , p
n

lui N = 1, . . . , n care are rangul k?


Presupunem ca 0 k < n!
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Calculul rangului unei permutari
Fie r rangul permutarii p
1
, . . . , p
n
.
Daca p
1
= 1 atunci 0 r < (n 1)!
Daca p
1
= 2 atunci (n 1)! r < 2 (n 1)!
. . .
Daca p
1
= k atunci (k 1) (n 1)! r < k (n 1)!
. . .
Daca p
1
= n atunci (n 1) (n 1)! r < n (n 1)! = n!
n general, (p
1
1) (n 1)! r < p
1
(n 1)!
rangul lui p
1
, . . . , p
n
= (p
1
1) (n 1)! +
rangul lui p
2
, . . . , p
n
n
enumerarea lexicograca
a permutarilor lui N p
1

r se poate calcula recursiv.


Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Calculul rangului unei permutari
Fie r rangul permutarii p
1
, . . . , p
n
.
Daca p
1
= 1 atunci 0 r < (n 1)!
Daca p
1
= 2 atunci (n 1)! r < 2 (n 1)!
. . .
Daca p
1
= k atunci (k 1) (n 1)! r < k (n 1)!
. . .
Daca p
1
= n atunci (n 1) (n 1)! r < n (n 1)! = n!
n general, (p
1
1) (n 1)! r < p
1
(n 1)!
rangul lui p
1
, . . . , p
n
= (p
1
1) (n 1)! +
rangul lui p
2
, . . . , p
n
n
enumerarea lexicograca
a permutarilor lui N p
1

r se poate calcula recursiv.


Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Calculul rangului unei permutari
Fie r rangul permutarii p
1
, . . . , p
n
.
Daca p
1
= 1 atunci 0 r < (n 1)!
Daca p
1
= 2 atunci (n 1)! r < 2 (n 1)!
. . .
Daca p
1
= k atunci (k 1) (n 1)! r < k (n 1)!
. . .
Daca p
1
= n atunci (n 1) (n 1)! r < n (n 1)! = n!
n general, (p
1
1) (n 1)! r < p
1
(n 1)!
rangul lui p
1
, . . . , p
n
= (p
1
1) (n 1)! +
rangul lui p
2
, . . . , p
n
n
enumerarea lexicograca
a permutarilor lui N p
1

r se poate calcula recursiv.


Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Calculul rangului unei permutari
Fie r rangul permutarii p
1
, . . . , p
n
.
Daca p
1
= 1 atunci 0 r < (n 1)!
Daca p
1
= 2 atunci (n 1)! r < 2 (n 1)!
. . .
Daca p
1
= k atunci (k 1) (n 1)! r < k (n 1)!
. . .
Daca p
1
= n atunci (n 1) (n 1)! r < n (n 1)! = n!
n general, (p
1
1) (n 1)! r < p
1
(n 1)!
rangul lui p
1
, . . . , p
n
= (p
1
1) (n 1)! +
rangul lui p
2
, . . . , p
n
n
enumerarea lexicograca
a permutarilor lui N p
1

r se poate calcula recursiv.


Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Calculul rangului unei permutari
Exemplu
Permutarea p
1
, p
2
, p
3
, p
4
, p
5
= 2, 3, 1, 5, 4 are rangul
r = (2 1) (5 1)!+ rangul lui 3, 1, 5, 4 n ordonarea
lexicograca a permutarilor lui 1, 3, 4, 5.
rangul lui 3, 1, 5, 4 n ordonarea lexicograca a permutarilor
lui 1, 3, 4, 5 este acelasi cu
rangul lui 2, 1, 4, 3 n ordonarea lexicograca a permutarilor
lui 1, 2, 3, 4
(am micsorat cu 1 toate elementele mai mari decat p
1
= 2)
Procedand recursiv, vom obt ine ca rangul lui 2, 1, 4, 3 este 7.
rangul lui 2, 3, 1, 5, 4 este 24 + 7 = 31.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Calculul rangului unei permutari
Pseudocod
Rang(p : int[0 .. n 1])
if n == 1
return 0
else
q : int[0 .. n 2];
// ajusteaza p[1..n-1] sa e permutare a lui 1, ..., n 1
// memorata in q[0 .. n 2]
for(i := 1; i n 1; i ++)
if(p[i ] < p[0])
q[i 1] = p[i ];
else
q[i 1] = p[i ] 1;
return Rang[q] + (p[0] 1) (n 1)!
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Calculul unei permutari cu rang dat
Se doreste un algoritm care construieste direct permutarea
(p
1
, . . . , p
n
) cu rangul r , cand 0 r < n!.
Am observat deja ca daca permutarea (p
1
, . . . , p
n
) are rangul
r , atunci (p
1
1) (n 1)! r < p
1
(n 1)!
p
1
=
_
r
(n 1)!
_
+ 1
Daca (q
1
, . . . , q
n1
) este permutarea cu rangul
r (p
1
1) (n 1)! atunci
p
i +1
=
_
q
i
daca q
i
< p
1
,
q
i
+ 1 daca q
i
p
1
.
pentru ecare subsecvent a.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Algoritmi de generare rapida a tuturor permutarilor
Generarea tuturor permutarilor se poate face si n alta ordine
decat cea lexicograca.
Uneori se doreste generarea foarte rapida a tuturor
permutarilor:
Acest lucru este posibil daca ecare permutare se obt ine foarte
rapid din cea precedenta.


In 1963, Heap a descoperit un algoritm care genereaza
permutarea urmatoare a unei permutari prin interschimbarea
valorilor a 2 elemente.
Algoritmul lui Heap este cel mai rapid algoritm de
generare a tuturor permutarilor.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Algoritmi de generare rapida a tuturor permutarilor
Algoritmul lui Heap: pseudocod
for(i := 1; i n; i ++)
p[i ] := i
for(c := 1; c n; c++)
1. genereaza toate permutarile p[1], . . . , p[n 1] fara a-l modica pe p[n];
(la sfarsitul pasului 1, p cont ine ultima permutare generata)
2. permuta p[n] cu elementul p[f (n, c)]
unde f (n, c) =

1 daca n este impar,


c daca n este par.
Algoritmul lui Heap genereaza toate permutarile lui {1, . . . , n} ntr-o ordine
diferita de cea lexicograca.
Fiecare permutare difera de cea precedenta printr-o transpozit ie (adica, o
interschimbare a valorilor a 2 elemente).
Exemplu
Algoritmul lui Heap enumera permutarile lui {1, 2, 3} n ordinea urmatoare:
1, 2, 3, 2, 1, 3, 3, 1, 2, 1, 3, 2, 2, 3, 1, 3, 2, 1
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Algoritmi de generare rapida a tuturor permutarilor
Algoritmul lui Heap: pseudocod
for(i := 1; i n; i ++)
p[i ] := i
for(c := 1; c n; c++)
1. genereaza toate permutarile p[1], . . . , p[n 1] fara a-l modica pe p[n];
(la sfarsitul pasului 1, p cont ine ultima permutare generata)
2. permuta p[n] cu elementul p[f (n, c)]
unde f (n, c) =

1 daca n este impar,


c daca n este par.
Algoritmul lui Heap genereaza toate permutarile lui {1, . . . , n} ntr-o ordine
diferita de cea lexicograca.
Fiecare permutare difera de cea precedenta printr-o transpozit ie (adica, o
interschimbare a valorilor a 2 elemente).
Exemplu
Algoritmul lui Heap enumera permutarile lui {1, 2, 3} n ordinea urmatoare:
1, 2, 3, 2, 1, 3, 3, 1, 2, 1, 3, 2, 2, 3, 1, 3, 2, 1
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Algoritmi de generare rapida a tuturor permutarilor
Algoritmul lui Heap: pseudocod
for(i := 1; i n; i ++)
p[i ] := i
for(c := 1; c n; c++)
1. genereaza toate permutarile p[1], . . . , p[n 1] fara a-l modica pe p[n];
(la sfarsitul pasului 1, p cont ine ultima permutare generata)
2. permuta p[n] cu elementul p[f (n, c)]
unde f (n, c) =

1 daca n este impar,


c daca n este par.
Algoritmul lui Heap genereaza toate permutarile lui {1, . . . , n} ntr-o ordine
diferita de cea lexicograca.
Fiecare permutare difera de cea precedenta printr-o transpozit ie (adica, o
interschimbare a valorilor a 2 elemente).
Exemplu
Algoritmul lui Heap enumera permutarile lui {1, 2, 3} n ordinea urmatoare:
1, 2, 3, 2, 1, 3, 3, 1, 2, 1, 3, 2, 2, 3, 1, 3, 2, 1
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Algoritmi de generare rapida a tuturor permutarilor
Algoritmul lui Heap: pseudocod
for(i := 1; i n; i ++)
p[i ] := i
for(c := 1; c n; c++)
1. genereaza toate permutarile p[1], . . . , p[n 1] fara a-l modica pe p[n];
(la sfarsitul pasului 1, p cont ine ultima permutare generata)
2. permuta p[n] cu elementul p[f (n, c)]
unde f (n, c) =

1 daca n este impar,


c daca n este par.
Algoritmul lui Heap genereaza toate permutarile lui {1, . . . , n} ntr-o ordine
diferita de cea lexicograca.
Fiecare permutare difera de cea precedenta printr-o transpozit ie (adica, o
interschimbare a valorilor a 2 elemente).
Exemplu
Algoritmul lui Heap enumera permutarile lui {1, 2, 3} n ordinea urmatoare:
1, 2, 3, 2, 1, 3, 3, 1, 2, 1, 3, 2, 2, 3, 1, 3, 2, 1
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Exercit ii
1
Sa se implementeze un program care citeste o secvent a de n
numere si apoi aseaza:
este permutare daca secvent a respectiva este o permutare a
lui 1, . . . , n
nu este permutare n caz contrar.
2
Sa se implementeze un program care citeste numerele n si
r 0, 1, . . . , n! 1 si aseaza permutarea lui 1, . . . , n
care are rangul r .
3
Sa se implementeze un program care citeste o permutare a lui
1, . . . , n si aseaza rangul permutarii respective.
4
Scriet i un program care citeste o permutare a
1
, . . . , a
n
si
calculeaza inversa ei, adica permutarea b
1
, . . . , b
n
astfel
ncat b
a
i
= a
b
i
= i pentru orice 1 i n.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Exercit ii
1
Scriet i un program care citeste o permutare si calculeaza
permutarea urmatoare n ordine lexicograca.
2
Scriet i un program care citeste o permutare si calculeaza
permutarea precedenta n ordine lexicograca.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Presupunem ca un card de 13 porumbei ocupa o cusca cu 12
adaposturi.
Numarul de adaposturi este mai mic decat numarul de porumbei
cel put in un adapost va ocupat de cel put in 2 porumbei.
Principiul porumbeilor (sau Principiul lui Dirichlet)
Fie n un numar ntreg pozitiv. Daca mai mult de n obiecte sunt
distribuite n n containere, atunci un container trebuie sa cont ina cel
put in 2 obiecte.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Presupunem ca un card de 13 porumbei ocupa o cusca cu 12
adaposturi.
Numarul de adaposturi este mai mic decat numarul de porumbei
cel put in un adapost va ocupat de cel put in 2 porumbei.
Principiul porumbeilor (sau Principiul lui Dirichlet)
Fie n un numar ntreg pozitiv. Daca mai mult de n obiecte sunt
distribuite n n containere, atunci un container trebuie sa cont ina cel
put in 2 obiecte.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Applicat ii n rat ionamentul combinatorial
Stabilirea existent ei unei anumite congurat ii sau combinari n
diverse situat ii.
1
Presupunem ca sunt 367 student i nscrisi la cursul de istorie.
Atunci cel put in 2 student i au aceeasi zi de nastere.
Demonstratie. Numarul de student i este mai mare decat
numarul de zile calendaristice. Conform pricipiului porumbeilor,
cel put in 2 student i sunt nascut i n aceeasi zi calendaristica.
2
n pugilisti concureaza ntr-un turneu care prevede un meci
ntre ecare pereche de pugilisti. Fiecare pugilist a pierdut cel
put in un meci. Atunci cel put in 2 pugilisti au obt inut acelasi
numar de victorii.
Demonstratie. Sunt n pugilisti, si ecare pugilist are ntre 0
si n 2 victorii. (Observat i ca nici un pugilist nu are n 1
victorii deoarece stim ca ecare a pierdut cel put in un meci.)
Conform principiului porumbeilor, cel put in 2 pugilisti au
acelasi numar de victorii.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Generalizare: Fie m si n ntregi pozitivi. Daca mai multe decat m n
obiecte sunt distribuite n n containere, atunci cel put in un container
trebue sa cont ina cel put in m + 1 obiecte.
Demonstratie: prin contradict ie. Daca punem cel mult m
obiecte n ecare container, atunci numarul total de obiecte ar cel
mult m n.
Teorema
Daca a
1
, a
2
, . . . , a
n
R si =
a
1
+ a
2
+. . . + a
n
n
, atunci exista ntregii i
si j cu 1 i , j n astfel ncat a
i
si a
j
.
Demonstratie: prin contradict ie.
Daca ecare element este strict mai mare decat atunci
= (a
1
+ a
2
+ . . . +a
n
)/n >
n
n
= , contradict ie a
i
.
Daca ecare element este strict mai mic decat atunci
= (a
1
+ a
2
+ . . . +a
n
)/n <
n
n
= , contradict ie a
j
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 1: Subsecvent e monotone
Denit ie (Secvent a monotona)
O secvent a a
1
, a
2
, . . . , a
n
este
crescatoare daca a
1
a
2
. . . a
n
strict crescatoare daca a
1
< a
2
< . . . < a
n
descrescatoare daca a
1
a
2
. . . a
n
strict descrescatoare daca a
1
> a
2
> . . . > a
n
Fie secvent a 3, 5, 8, 10, 6, 1, 9, 2, 7, 4.
Care sunt subsecvent ele crescatoare de lungime maxima?
(3, 5, 8, 10), (3, 5, 8, 9), (3, 5, 6, 7), (3, 5, 6, 9)
Care sunt subsecvent ele descrescatoare de lungime maxima?
(10, 9, 7, 4)
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 1: Subsecvent e monotone (continuare)
Teorema
Presupunem ca m, n N0. O secvent a cu mai mult de m n numere
reale trebuie sa cont ina e o subsecvent a crescatoare de lungime cel put in
m+1, sau o subsecvent a strict descrescatoare de lungime cel put in n +1.
Demonstratie.
r
1
, r
2
, . . . , r
mn+1
Pentru ecare 1 i m n + 1, e
a
i
:=lungimea celei mai lungi subsecvent e crescatoare ce ncepe cu r
i
d
i
:=lungimea celei mai lungi subsecvent e strict descrescatoare ce
ncepe cu r
i
De exemplu, daca secvent a este 3, 5, 8, 10, 6, 1, 9, 2, 7, 4 atunci
a
2
= 3 (pentru subsecvent a 5, 8, 10 sau 5, 8, 9)
d
2
= 2 (pentru subsecvent a 5, 1 sau 5, 2 sau 5, 4)
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 1: Subsecvent e monotone (Demo. continuata)
Presupunem ca teorema este falsa 1 a
i
m si
1 d
i
n
perechea (a
i
, d
i
) are m n valori posibile.
Exista m n + 1 perechi i < j cu (a
i
, d
i
) = (a
j
, d
j
).
Daca i < j si (a
i
, d
i
) = (a
j
, d
j
) atunci
1
Lungimea maxima a subsecvent elor crescatoare ce pornesc din
r
i
si din r
j
este a
i
.
2
Lungimea maxima a subsecvent elor strict descrescatoare ce
pornesc din r
i
si din r
j
este d
i
.
Acest lucru este imposibil indca
1
daca r
i
r
j
atunci r
i

lungime a
i
..
r
j
. . .
. .
lungime a
i
+1
2
Daca r
i
> r
j
atunci r
i
>
lungime d
i
..
r
j
> . . .
. .
lungime d
i
+1
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea cu numere rat ionale
Pentru ecare numar real x R denim:
x| := cel mai mare ntreg m astfel ncat m x.
,x| := cel mai mic ntreg m astfel ncat x m.
Partea fract ionara a lui x:
x := x x|
Un numar irat ional este un numar care nu este rezultatul
mpart irii a doi ntregi.
Exemple: = 3.14159265 . . ., e = 2.7182818 . . ., etc.
Daca este un numar irat ional si Q N 0, cat de bine
putem aproxima cu un numar rat ional
p
q
unde 1 q Q?
Cat de mic poate deveni


p
q

cand 1 q Q?
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea cu numere rat ionale
Pentru ecare numar real x R denim:
x| := cel mai mare ntreg m astfel ncat m x.
,x| := cel mai mic ntreg m astfel ncat x m.
Partea fract ionara a lui x:
x := x x|
Un numar irat ional este un numar care nu este rezultatul
mpart irii a doi ntregi.
Exemple: = 3.14159265 . . ., e = 2.7182818 . . ., etc.
Daca este un numar irat ional si Q N 0, cat de bine
putem aproxima cu un numar rat ional
p
q
unde 1 q Q?
Cat de mic poate deveni


p
q

cand 1 q Q?
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea cu numere rat ionale
Pentru ecare numar real x R denim:
x| := cel mai mare ntreg m astfel ncat m x.
,x| := cel mai mic ntreg m astfel ncat x m.
Partea fract ionara a lui x:
x := x x|
Un numar irat ional este un numar care nu este rezultatul
mpart irii a doi ntregi.
Exemple: = 3.14159265 . . ., e = 2.7182818 . . ., etc.
Daca este un numar irat ional si Q N 0, cat de bine
putem aproxima cu un numar rat ional
p
q
unde 1 q Q?
Cat de mic poate deveni


p
q

cand 1 q Q?
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea cu numere rat ionale
Pentru ecare numar real x R denim:
x| := cel mai mare ntreg m astfel ncat m x.
,x| := cel mai mic ntreg m astfel ncat x m.
Partea fract ionara a lui x:
x := x x|
Un numar irat ional este un numar care nu este rezultatul
mpart irii a doi ntregi.
Exemple: = 3.14159265 . . ., e = 2.7182818 . . ., etc.
Daca este un numar irat ional si Q N 0, cat de bine
putem aproxima cu un numar rat ional
p
q
unde 1 q Q?
Cat de mic poate deveni


p
q

cand 1 q Q?
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea cu numere rat ionale
Pentru ecare numar real x R denim:
x| := cel mai mare ntreg m astfel ncat m x.
,x| := cel mai mic ntreg m astfel ncat x m.
Partea fract ionara a lui x:
x := x x|
Un numar irat ional este un numar care nu este rezultatul
mpart irii a doi ntregi.
Exemple: = 3.14159265 . . ., e = 2.7182818 . . ., etc.
Daca este un numar irat ional si Q N 0, cat de bine
putem aproxima cu un numar rat ional
p
q
unde 1 q Q?
Cat de mic poate deveni


p
q

cand 1 q Q?
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea cu numere rat ionale
Pentru ecare numar real x R denim:
x| := cel mai mare ntreg m astfel ncat m x.
,x| := cel mai mic ntreg m astfel ncat x m.
Partea fract ionara a lui x:
x := x x|
Un numar irat ional este un numar care nu este rezultatul
mpart irii a doi ntregi.
Exemple: = 3.14159265 . . ., e = 2.7182818 . . ., etc.
Daca este un numar irat ional si Q N 0, cat de bine
putem aproxima cu un numar rat ional
p
q
unde 1 q Q?
Cat de mic poate deveni


p
q

cand 1 q Q?
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea cu numere rat ionale
Pentru ecare numar real x R denim:
x| := cel mai mare ntreg m astfel ncat m x.
,x| := cel mai mic ntreg m astfel ncat x m.
Partea fract ionara a lui x:
x := x x|
Un numar irat ional este un numar care nu este rezultatul
mpart irii a doi ntregi.
Exemple: = 3.14159265 . . ., e = 2.7182818 . . ., etc.
Daca este un numar irat ional si Q N 0, cat de bine
putem aproxima cu un numar rat ional
p
q
unde 1 q Q?
Cat de mic poate deveni


p
q

cand 1 q Q?
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea cu numere rat ionale
Pentru ecare numar real x R denim:
x| := cel mai mare ntreg m astfel ncat m x.
,x| := cel mai mic ntreg m astfel ncat x m.
Partea fract ionara a lui x:
x := x x|
Un numar irat ional este un numar care nu este rezultatul
mpart irii a doi ntregi.
Exemple: = 3.14159265 . . ., e = 2.7182818 . . ., etc.
Daca este un numar irat ional si Q N 0, cat de bine
putem aproxima cu un numar rat ional
p
q
unde 1 q Q?
Cat de mic poate deveni


p
q

cand 1 q Q?
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea cu numere rat ionale (2)
Teorema (Teorema de aproximare a lui Dirichlet)
Daca este un numar irat ional si Q un ntreg pozitiv, atunci
exista un numar rat ional p/q cu 1 q Q astfel ncat


p
q


1
q (Q + 1)
.
Demonstratie.

Impart im intervalul [0, 1] n Q + 1 subintervale de
lungimi egale:
_
0,
1
Q + 1
_
,
_
1
Q + 1
,
2
Q + 1
_
, . . . ,
_
Q
Q + 1
, 1
_
si urmatoarele Q + 2 numere reale:
r
1
= 0, r
2
= , 2, . . . , r
Q+1
= Q, r
Q+2
= 1
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea numerelor rat ionale (2)
Avem Q + 2 numere n Q + 1 intervale
exista i < j cu r
i
, r
j
n acelasi interval
[r
i
r
j
[
1
Q+1
. Se observa ca (i , j ) ,= (1, Q + 2)
Deasemenea
r
1
= 0 0
r
i
= (i 1) (i 1)| daca 2 i Q + 1
r
Q+2
= 0 (1)
ecare r
i
este u
i
v
i
cu u
i
, v
i
Z, si
daca i < j atunci u
i
= u
j
numai daca (i , j ) = (1, Q + 2).
[r
i
r
j
[ = [(u
i
u
j
) (v
i
v
j
)[ = [u
i
u
j
[
. .
q[1,Q]
[
v
i
v
j
u
i
u
j
. .
p
q
[
1
Q+1
.
Deci


p
q


1
q (Q + 1)
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea numerelor rat ionale (2)
Avem Q + 2 numere n Q + 1 intervale
exista i < j cu r
i
, r
j
n acelasi interval
[r
i
r
j
[
1
Q+1
. Se observa ca (i , j ) ,= (1, Q + 2)
Deasemenea
r
1
= 0 0
r
i
= (i 1) (i 1)| daca 2 i Q + 1
r
Q+2
= 0 (1)
ecare r
i
este u
i
v
i
cu u
i
, v
i
Z, si
daca i < j atunci u
i
= u
j
numai daca (i , j ) = (1, Q + 2).
[r
i
r
j
[ = [(u
i
u
j
) (v
i
v
j
)[ = [u
i
u
j
[
. .
q[1,Q]
[
v
i
v
j
u
i
u
j
. .
p
q
[
1
Q+1
.
Deci


p
q


1
q (Q + 1)
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea numerelor rat ionale (2)
Avem Q + 2 numere n Q + 1 intervale
exista i < j cu r
i
, r
j
n acelasi interval
[r
i
r
j
[
1
Q+1
. Se observa ca (i , j ) ,= (1, Q + 2)
Deasemenea
r
1
= 0 0
r
i
= (i 1) (i 1)| daca 2 i Q + 1
r
Q+2
= 0 (1)
ecare r
i
este u
i
v
i
cu u
i
, v
i
Z, si
daca i < j atunci u
i
= u
j
numai daca (i , j ) = (1, Q + 2).
[r
i
r
j
[ = [(u
i
u
j
) (v
i
v
j
)[ = [u
i
u
j
[
. .
q[1,Q]
[
v
i
v
j
u
i
u
j
. .
p
q
[
1
Q+1
.
Deci


p
q


1
q (Q + 1)
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea numerelor rat ionale (2)
Avem Q + 2 numere n Q + 1 intervale
exista i < j cu r
i
, r
j
n acelasi interval
[r
i
r
j
[
1
Q+1
. Se observa ca (i , j ) ,= (1, Q + 2)
Deasemenea
r
1
= 0 0
r
i
= (i 1) (i 1)| daca 2 i Q + 1
r
Q+2
= 0 (1)
ecare r
i
este u
i
v
i
cu u
i
, v
i
Z, si
daca i < j atunci u
i
= u
j
numai daca (i , j ) = (1, Q + 2).
[r
i
r
j
[ = [(u
i
u
j
) (v
i
v
j
)[ = [u
i
u
j
[
. .
q[1,Q]
[
v
i
v
j
u
i
u
j
. .
p
q
[
1
Q+1
.
Deci


p
q


1
q (Q + 1)
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea numerelor rat ionale (2)
Avem Q + 2 numere n Q + 1 intervale
exista i < j cu r
i
, r
j
n acelasi interval
[r
i
r
j
[
1
Q+1
. Se observa ca (i , j ) ,= (1, Q + 2)
Deasemenea
r
1
= 0 0
r
i
= (i 1) (i 1)| daca 2 i Q + 1
r
Q+2
= 0 (1)
ecare r
i
este u
i
v
i
cu u
i
, v
i
Z, si
daca i < j atunci u
i
= u
j
numai daca (i , j ) = (1, Q + 2).
[r
i
r
j
[ = [(u
i
u
j
) (v
i
v
j
)[ = [u
i
u
j
[
. .
q[1,Q]
[
v
i
v
j
u
i
u
j
. .
p
q
[
1
Q+1
.
Deci


p
q


1
q (Q + 1)
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea numerelor rat ionale (2)
Avem Q + 2 numere n Q + 1 intervale
exista i < j cu r
i
, r
j
n acelasi interval
[r
i
r
j
[
1
Q+1
. Se observa ca (i , j ) ,= (1, Q + 2)
Deasemenea
r
1
= 0 0
r
i
= (i 1) (i 1)| daca 2 i Q + 1
r
Q+2
= 0 (1)
ecare r
i
este u
i
v
i
cu u
i
, v
i
Z, si
daca i < j atunci u
i
= u
j
numai daca (i , j ) = (1, Q + 2).
[r
i
r
j
[ = [(u
i
u
j
) (v
i
v
j
)[ = [u
i
u
j
[
. .
q[1,Q]
[
v
i
v
j
u
i
u
j
. .
p
q
[
1
Q+1
.
Deci


p
q


1
q (Q + 1)
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul porumbeilor
Aplicat ia 2: Aproximarea numerelor rat ionale (2)
Avem Q + 2 numere n Q + 1 intervale
exista i < j cu r
i
, r
j
n acelasi interval
[r
i
r
j
[
1
Q+1
. Se observa ca (i , j ) ,= (1, Q + 2)
Deasemenea
r
1
= 0 0
r
i
= (i 1) (i 1)| daca 2 i Q + 1
r
Q+2
= 0 (1)
ecare r
i
este u
i
v
i
cu u
i
, v
i
Z, si
daca i < j atunci u
i
= u
j
numai daca (i , j ) = (1, Q + 2).
[r
i
r
j
[ = [(u
i
u
j
) (v
i
v
j
)[ = [u
i
u
j
[
. .
q[1,Q]
[
v
i
v
j
u
i
u
j
. .
p
q
[
1
Q+1
.
Deci


p
q


1
q (Q + 1)
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Exemple ilustrative
Presupunem ca un sertar cont ine 50 de margele: 25 sunt de sticla, 30
sunt rosii, 20 sunt sferice, 18 sunt de sticla rosie, 12 sunt sferice de sticla,
15 sunt sferice rosii, si 8 sunt sferice de sticla rosie. Cate margele exista
care nu sunt nici rosii, nici de sticla si nici sferice?
R

aspuns: Desenam o diagrama Venn cu 3 mult imi: mult imea G a


margelelor de sticla, R a margelelor rosii, si S a margelelor sferice.
Observatie.
[G R S[ = [G[ +[R[ +[S[ [G R[ [G S[ [R S[ +[G R S[.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Ipoteze:
N: o mult ime universala
a
1
, . . . , a
r
: proprietat i ale elementelor mult imii N
N(a
i
1
a
i
2
. . . a
i
m
): numarul obiectelor din N care au simultan
proprietat ile a
i
1
, a
i
2
, . . . , a
i
m
.
N
0
: numarul obiectelor din N care nu au nici una din aceste
proprietat i.
Teorema (Principiul Incluziunii si Excluziunii)
N
0
= N

i
N(a
i
) +

i <j
N(a
i
a
j
)

i <j <k
N(a
i
a
j
a
k
) +. . .
+ (1)
m

i
1
<<i
m
N(a
i
1
. . . a
i
m
) +. . . + (1)
r
N(a
1
a
2
. . . a
r
).
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 1: Funct ia a lui Euler
(n):= numarul ntregilor 1 m < n cu gcd(m, n) = 1.
Exemplu: (24) = 8 deoarece sunt 8 intregi ntre 1 si 23 care
nu au factor comun cu 24: 1,5,7,11,13,17,19,23.
(n) joaca un rol important n teoria numerelor.
(n) poate calculata cu Principiul Incluziunii si Excluziunii:
Presupunem ca n = p
n
1
1
. . . p
n
r
r
unde p
1
, . . . , p
r
sunt numere
prime distincte, si n
i
> 0 pentru 1 i r .
Fie a
i
proprietatea mai mic decat n si divizibil cu p
i

(1 i r )
(n) = N
0
=
n

i
N(a
i
) +

i <j
N(a
i
a
j
) +. . . + (1)
r
N(a
1
. . . a
r
).
N(a
i
1
. . . , a
i
m
) este numarul de elemente < n divizibile cu
p
i
1
. . . p
i
m
N(a
i
1
. . . a
i
m
) =
n
p
i
1
. . . p
i
m
.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 1: Funct ia a lui Euler
(n) = n

i
n
p
i
+

i <j
n
p
i
p
j
+. . . + (1)
n
n
p
1
p
2
. . . p
r
= n
r

i =1
_
1
1
p
i
_
.
Exemplu: (24) = (2
3
3) = 24
_
1
1
2
_

_
1
1
3
_
= 8.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Observatie: Daca n nu este prim atunci n = a b cu
1 < a b a
2
n, deci a

n si n trebuie sa e divizibil
cu un numar prim p

n.
Criteriu de numarare a numerelor prime < n:

Incepem cu mult imea N = 1, . . . , n si numaram


N
0
= numarul de elemente ramase dupa ce se elimina din
mult imea N multiplii de numere prime p

n.
Numarul obt inut nu este tocmai cel dorit deoarece
nu am numarat numerele prime n
am numarat 1
Numarul cautat este
N
0
+ r 1
unde r este numarul numerelor prime

n.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Observatie: Daca n nu este prim atunci n = a b cu
1 < a b a
2
n, deci a

n si n trebuie sa e divizibil
cu un numar prim p

n.
Criteriu de numarare a numerelor prime < n:

Incepem cu mult imea N = 1, . . . , n si numaram


N
0
= numarul de elemente ramase dupa ce se elimina din
mult imea N multiplii de numere prime p

n.
Numarul obt inut nu este tocmai cel dorit deoarece
nu am numarat numerele prime n
am numarat 1
Numarul cautat este
N
0
+ r 1
unde r este numarul numerelor prime

n.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Observatie: Daca n nu este prim atunci n = a b cu
1 < a b a
2
n, deci a

n si n trebuie sa e divizibil
cu un numar prim p

n.
Criteriu de numarare a numerelor prime < n:

Incepem cu mult imea N = 1, . . . , n si numaram


N
0
= numarul de elemente ramase dupa ce se elimina din
mult imea N multiplii de numere prime p

n.
Numarul obt inut nu este tocmai cel dorit deoarece
nu am numarat numerele prime n
am numarat 1
Numarul cautat este
N
0
+ r 1
unde r este numarul numerelor prime

n.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Observatie: Daca n nu este prim atunci n = a b cu
1 < a b a
2
n, deci a

n si n trebuie sa e divizibil
cu un numar prim p

n.
Criteriu de numarare a numerelor prime < n:

Incepem cu mult imea N = 1, . . . , n si numaram


N
0
= numarul de elemente ramase dupa ce se elimina din
mult imea N multiplii de numere prime p

n.
Numarul obt inut nu este tocmai cel dorit deoarece
nu am numarat numerele prime n
am numarat 1
Numarul cautat este
N
0
+ r 1
unde r este numarul numerelor prime

n.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Observatie: Daca n nu este prim atunci n = a b cu
1 < a b a
2
n, deci a

n si n trebuie sa e divizibil
cu un numar prim p

n.
Criteriu de numarare a numerelor prime < n:

Incepem cu mult imea N = 1, . . . , n si numaram


N
0
= numarul de elemente ramase dupa ce se elimina din
mult imea N multiplii de numere prime p

n.
Numarul obt inut nu este tocmai cel dorit deoarece
nu am numarat numerele prime n
am numarat 1
Numarul cautat este
N
0
+ r 1
unde r este numarul numerelor prime

n.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Observatie: Daca n nu este prim atunci n = a b cu
1 < a b a
2
n, deci a

n si n trebuie sa e divizibil
cu un numar prim p

n.
Criteriu de numarare a numerelor prime < n:

Incepem cu mult imea N = 1, . . . , n si numaram


N
0
= numarul de elemente ramase dupa ce se elimina din
mult imea N multiplii de numere prime p

n.
Numarul obt inut nu este tocmai cel dorit deoarece
nu am numarat numerele prime n
am numarat 1
Numarul cautat este
N
0
+ r 1
unde r este numarul numerelor prime

n.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Cel mai mare numar prim

120 este 7
Consideram mult imea universala N = n N [ 1 n 120 si
eliminam din N toate elementele divizible cu un numar prim
7. Altfel spus, eliminam din N toate elementele care au una
din proprietat ile urmatoare:
a
1
= este divizibil cu p
1
= 2
a
2
= este divizibil cu p
2
= 3
a
3
= este divizibil cu p
3
= 5
a
4
= este divizibil cu p
4
= 7
si obt inem o mult ime M cu N
0
elemente.

I: Este N
0
numarul pe care-l cautam?
R: Nu tocmai, indca:
M cont ine toate numerele prime ntre 1 si 120, cu except ia lui
p
1
= 2, p
2
= 3, p
3
= 5, p
4
= 7.
M cont ine 1, care nu este numar prim.
Numarul numerelor prime 120 este N
0
+ 4 1.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Cel mai mare numar prim

120 este 7
Consideram mult imea universala N = n N [ 1 n 120 si
eliminam din N toate elementele divizible cu un numar prim
7. Altfel spus, eliminam din N toate elementele care au una
din proprietat ile urmatoare:
a
1
= este divizibil cu p
1
= 2
a
2
= este divizibil cu p
2
= 3
a
3
= este divizibil cu p
3
= 5
a
4
= este divizibil cu p
4
= 7
si obt inem o mult ime M cu N
0
elemente.

I: Este N
0
numarul pe care-l cautam?
R: Nu tocmai, indca:
M cont ine toate numerele prime ntre 1 si 120, cu except ia lui
p
1
= 2, p
2
= 3, p
3
= 5, p
4
= 7.
M cont ine 1, care nu este numar prim.
Numarul numerelor prime 120 este N
0
+ 4 1.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Cel mai mare numar prim

120 este 7
Consideram mult imea universala N = n N [ 1 n 120 si
eliminam din N toate elementele divizible cu un numar prim
7. Altfel spus, eliminam din N toate elementele care au una
din proprietat ile urmatoare:
a
1
= este divizibil cu p
1
= 2
a
2
= este divizibil cu p
2
= 3
a
3
= este divizibil cu p
3
= 5
a
4
= este divizibil cu p
4
= 7
si obt inem o mult ime M cu N
0
elemente.

I: Este N
0
numarul pe care-l cautam?
R: Nu tocmai, indca:
M cont ine toate numerele prime ntre 1 si 120, cu except ia lui
p
1
= 2, p
2
= 3, p
3
= 5, p
4
= 7.
M cont ine 1, care nu este numar prim.
Numarul numerelor prime 120 este N
0
+ 4 1.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Cel mai mare numar prim

120 este 7
Consideram mult imea universala N = n N [ 1 n 120 si
eliminam din N toate elementele divizible cu un numar prim
7. Altfel spus, eliminam din N toate elementele care au una
din proprietat ile urmatoare:
a
1
= este divizibil cu p
1
= 2
a
2
= este divizibil cu p
2
= 3
a
3
= este divizibil cu p
3
= 5
a
4
= este divizibil cu p
4
= 7
si obt inem o mult ime M cu N
0
elemente.

I: Este N
0
numarul pe care-l cautam?
R: Nu tocmai, indca:
M cont ine toate numerele prime ntre 1 si 120, cu except ia lui
p
1
= 2, p
2
= 3, p
3
= 5, p
4
= 7.
M cont ine 1, care nu este numar prim.
Numarul numerelor prime 120 este N
0
+ 4 1.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Cel mai mare numar prim

120 este 7
Consideram mult imea universala N = n N [ 1 n 120 si
eliminam din N toate elementele divizible cu un numar prim
7. Altfel spus, eliminam din N toate elementele care au una
din proprietat ile urmatoare:
a
1
= este divizibil cu p
1
= 2
a
2
= este divizibil cu p
2
= 3
a
3
= este divizibil cu p
3
= 5
a
4
= este divizibil cu p
4
= 7
si obt inem o mult ime M cu N
0
elemente.

I: Este N
0
numarul pe care-l cautam?
R: Nu tocmai, indca:
M cont ine toate numerele prime ntre 1 si 120, cu except ia lui
p
1
= 2, p
2
= 3, p
3
= 5, p
4
= 7.
M cont ine 1, care nu este numar prim.
Numarul numerelor prime 120 este N
0
+ 4 1.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime
Cate numere prime sunt ntre 1 si 120?
Cel mai mare numar prim

120 este 7
Consideram mult imea universala N = n N [ 1 n 120 si
eliminam din N toate elementele divizible cu un numar prim
7. Altfel spus, eliminam din N toate elementele care au una
din proprietat ile urmatoare:
a
1
= este divizibil cu p
1
= 2
a
2
= este divizibil cu p
2
= 3
a
3
= este divizibil cu p
3
= 5
a
4
= este divizibil cu p
4
= 7
si obt inem o mult ime M cu N
0
elemente.

I: Este N
0
numarul pe care-l cautam?
R: Nu tocmai, indca:
M cont ine toate numerele prime ntre 1 si 120, cu except ia lui
p
1
= 2, p
2
= 3, p
3
= 5, p
4
= 7.
M cont ine 1, care nu este numar prim.
Numarul numerelor prime 120 este N
0
+ 4 1.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime (continuare)
Cate numere prime sunt ntre 1 si 120?
N
0
= 120
4

i =1
N(a
i
) +

i <j
N(a
i
a
j
)

i <j <k
N(a
i
a
j
a
k
) +N(a
1
a
2
a
3
a
4
)
Observam ca N(a
i
1
. . . a
i
m
) =
_
120
p
i
1
...p
i
m
_
(de ce?)
De exemplu:
N(a
1
) = 120/2| = 60, N(a
2
) = 120/3| = 40,
N(a
3
) = 120/5| = 24, N(a
4
) = 120/7| = 17
N(a
1
a
2
) = 120/(2 3)| = 20, N(a
1
a
3
) = 120/(2 5)| = 12,
. . .
N(a
1
a
2
a
3
a
4
) = 120/(2 3 5 7)| = 120/210| = 0
N
0
= 120 (60 + 40 + 24 + 17) + (20 + 12 + 8 + 8 + 5 + 3)
(4 + 2 + 1 + 1) + 0 = 27.
Numarul pe care-l cautam este 27 + 4 1 = 30
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime (continuare)
Cate numere prime sunt ntre 1 si 120?
N
0
= 120
4

i =1
N(a
i
) +

i <j
N(a
i
a
j
)

i <j <k
N(a
i
a
j
a
k
) +N(a
1
a
2
a
3
a
4
)
Observam ca N(a
i
1
. . . a
i
m
) =
_
120
p
i
1
...p
i
m
_
(de ce?)
De exemplu:
N(a
1
) = 120/2| = 60, N(a
2
) = 120/3| = 40,
N(a
3
) = 120/5| = 24, N(a
4
) = 120/7| = 17
N(a
1
a
2
) = 120/(2 3)| = 20, N(a
1
a
3
) = 120/(2 5)| = 12,
. . .
N(a
1
a
2
a
3
a
4
) = 120/(2 3 5 7)| = 120/210| = 0
N
0
= 120 (60 + 40 + 24 + 17) + (20 + 12 + 8 + 8 + 5 + 3)
(4 + 2 + 1 + 1) + 0 = 27.
Numarul pe care-l cautam este 27 + 4 1 = 30
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime (continuare)
Cate numere prime sunt ntre 1 si 120?
N
0
= 120
4

i =1
N(a
i
) +

i <j
N(a
i
a
j
)

i <j <k
N(a
i
a
j
a
k
) +N(a
1
a
2
a
3
a
4
)
Observam ca N(a
i
1
. . . a
i
m
) =
_
120
p
i
1
...p
i
m
_
(de ce?)
De exemplu:
N(a
1
) = 120/2| = 60, N(a
2
) = 120/3| = 40,
N(a
3
) = 120/5| = 24, N(a
4
) = 120/7| = 17
N(a
1
a
2
) = 120/(2 3)| = 20, N(a
1
a
3
) = 120/(2 5)| = 12,
. . .
N(a
1
a
2
a
3
a
4
) = 120/(2 3 5 7)| = 120/210| = 0
N
0
= 120 (60 + 40 + 24 + 17) + (20 + 12 + 8 + 8 + 5 + 3)
(4 + 2 + 1 + 1) + 0 = 27.
Numarul pe care-l cautam este 27 + 4 1 = 30
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime (continuare)
Cate numere prime sunt ntre 1 si 120?
N
0
= 120
4

i =1
N(a
i
) +

i <j
N(a
i
a
j
)

i <j <k
N(a
i
a
j
a
k
) +N(a
1
a
2
a
3
a
4
)
Observam ca N(a
i
1
. . . a
i
m
) =
_
120
p
i
1
...p
i
m
_
(de ce?)
De exemplu:
N(a
1
) = 120/2| = 60, N(a
2
) = 120/3| = 40,
N(a
3
) = 120/5| = 24, N(a
4
) = 120/7| = 17
N(a
1
a
2
) = 120/(2 3)| = 20, N(a
1
a
3
) = 120/(2 5)| = 12,
. . .
N(a
1
a
2
a
3
a
4
) = 120/(2 3 5 7)| = 120/210| = 0
N
0
= 120 (60 + 40 + 24 + 17) + (20 + 12 + 8 + 8 + 5 + 3)
(4 + 2 + 1 + 1) + 0 = 27.
Numarul pe care-l cautam este 27 + 4 1 = 30
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Principiul Incluziunii si Excluziunii
Aplicat ia 2: numararea numerelor prime (continuare)
Cate numere prime sunt ntre 1 si 120?
N
0
= 120
4

i =1
N(a
i
) +

i <j
N(a
i
a
j
)

i <j <k
N(a
i
a
j
a
k
) +N(a
1
a
2
a
3
a
4
)
Observam ca N(a
i
1
. . . a
i
m
) =
_
120
p
i
1
...p
i
m
_
(de ce?)
De exemplu:
N(a
1
) = 120/2| = 60, N(a
2
) = 120/3| = 40,
N(a
3
) = 120/5| = 24, N(a
4
) = 120/7| = 17
N(a
1
a
2
) = 120/(2 3)| = 20, N(a
1
a
3
) = 120/(2 5)| = 12,
. . .
N(a
1
a
2
a
3
a
4
) = 120/(2 3 5 7)| = 120/210| = 0
N
0
= 120 (60 + 40 + 24 + 17) + (20 + 12 + 8 + 8 + 5 + 3)
(4 + 2 + 1 + 1) + 0 = 27.
Numarul pe care-l cautam este 27 + 4 1 = 30
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Bibliograe
1
Capitolul 2, Sect iunea 2.1: Generating Permutations of
S. Pemmaraju, S. Skiena. Combinatorics and Graph Theory
with Mathematica. Cambridge University Press 2003.
2
Capitolul 2, Sect iunile 2.4 si 2.5 din
J. M. Harris, J. L. Hirst, M.J. Mossingho. Combinatorics and
Graph Theory. Second Edition. Springer 2008.
3
Capitolul 5 din
K. H. Rosen. Discrete Mathematics and Its Aplications. Sixth
Edition. McGraw Hill Higher Education. 2007.
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii
Generarea si ordonarea permutarilor. Principiul porumbeilor. Principiul incluziunii si excluziunii