lista de exercícios 6: soluções

24
f X Y A B X A B f (A) f (B) f X Y A X B X A B y f (A) y f (B) y = f (x) x A A B x B y = f (x) x B y f (B) f X Y A B X f (A B)= f (A) f (B) X = {1, 2, 3} Y = {a, b} f : X Y {(1,a), (2,b), (3,b)}. A = {1, 2} B = {1, 3} f (A)= {a, b} = f (B) f (A) f (B)= {a, b} f (A B)= f ({1})= {a}6 = {a, b} f (A B) 6= f (A) f (B) x 1 ,x 2 X, f (x 1 )= f (x 2 ) x 1 = x 2 x 1 ,x 2 X, x 1 6= x 2 f (x 1 ) 6= f (x 2 ) 1, - 1 3 , 1 5 , - 1 7 , 1 9 , - 1 11 ,... Z * =0 Z + f : Z * R f (n)= (-1) n 2n +1 , n

Upload: lamhanh

Post on 07-Jan-2017

243 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Lista de Exercícios 6: Soluções

Lista de Exercícios 6: SoluçõesFunções

UFMG/ICEx/DCC DCC111 Matemática Discreta

Ciências Exatas & Engenharias 1o Semestre de 2018

Conceitos

1. Determine e justique se a seguinte armação é verdadeira ou não para todas as funções f de um conjuntoX para um conjunto Y : para todos sub-conjuntos A e B de X, se A ⊆ B, então f(A) ⊆ f(B).

Resposta:

A armação é verdadeira. Prova: Seja f uma função de X para Y e suponha A ⊆ X, B ⊆ X e A ⊆ B.Seja y ∈ f(A). [Devemos mostrar que y ∈ f(B)]. Pela denição de imagem de um conjunto, y = f(x) paraalgum x ∈ A. Como A ⊆ B, x ∈ B e, assim, y = f(x) para algum x ∈ B. Consequentemente, y ∈ f(B) [oque devia ser mostrado].

2. Determine e justique se a seguinte armação é verdadeira ou não, para todas as funções f de um conjuntoX para um conjunto Y : para todos sub-conjuntos A e B de X, f(A ∩B) = f(A) ∩ f(B).

Resposta:

A armação é falsa. Prova [por contra-exemplo]: Seja X = 1, 2, 3 e seja Y = a, b. A função f : X → Yé denida pelos seguintes pares ordenados:

(1, a), (2, b), (3, b).

Seja A = 1, 2 e seja B = 1, 3. Temos que f(A) = a, b = f(B) e, assim f(A) ∩ f(B) = a, b. Masf(A ∩B) = f(1) = a 6= a, b. Assim, f(A ∩B) 6= f(A) ∩ f(B).

3. A denição de função injetiva ou um-para-um pode ser dada de duas formas:

∀x1, x2 ∈ X, se f(x1) = f(x2) então x1 = x2

e∀x1, x2 ∈ X, se x1 6= x2 então f(x1) 6= f(x2)

Porque estas duas denições são logicamente equivalentes?

Resposta:

A segunda denição é a forma contrapositiva da primeira.

Sequência como função

4. Apresente uma função denida no conjunto dos inteiros não negativos que construa a seqüência abaixo:

1,−1

3,

1

5,−1

7,

1

9,− 1

11, . . .

Resposta:

Seja Z∗ = 0 ∪ Z+. A seqüência pode ser construída pela função f : Z∗ → R denida como:

f(n) =(−1)n

2n+ 1,

para todos os inteiros não negativos n.

Princípio da casa de pombo

1

Page 2: Lista de Exercícios 6: Soluções

5. Seja S = 3, 4, 5, 6, 7, 8, 9, 10, 11, 12. Suponha que seis inteiros sejam escolhidos de S. Existem dois inteiroscuja soma é 15? Justique sua resposta.

Resposta:

Sim. Seja Y o conjunto de todos os pares de inteiros de S que somam 15. Existem cinco elementos emY , ou seja, Y = 3, 12, 4, 11, 5, 10, 6, 9, 7, 8, e cada inteiro de S ocorre em exatamente um par.Seja X o conjunto de seis inteiros escolhidos de S e considere a função de X para Y denida pela regra:P (x) = o par para o qual x pertence. Como X tem seis elementos e Y tem cinco elementos e 6 > 5, entãopelo princípio da casa de pombo, P não é uma função injetiva. Assim, P (x1) = P (x2) para alguns inteirosx1 e x2 em X com x1 6= x2. Isto signica que x1 e x2 são inteiros distintos no mesmo pair, o que implicax1 + x2 = 15.

6. Quantos inteiros devem ser escolhidos aleatoriamente para se ter certeza que pelo menos dois deles têm omesmo resto quando divididos por 7? Justique sua resposta.

Resposta:

Qualquer número inteiro quando dividido por 7 pode deixar como resto 0, 1, 2, 3, 4, 5, 6. Assim, podem serescolhidos sete números que deixam um resto diferente. Ao se pegar um oitavo número, teremos pelo menosdois números que deixam o mesmo resto.

7. Mostre que para qualquer conjunto de 13 números escolhidos no intervalo [2, 40], existem pelo menos doisinteiros com um divisor comum maior que 1.

Resposta:

Seja A o conjunto de 13 números escolhidos e seja B o conjunto de todos os números primos no intervalo[2, 40], ou seja, B = 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37. Para cada x em A, seja F (x) o menor númeroprimo que divide x. Como A tem 13 elementos e B tem 12 elementos, pelo princípio da casa de pombo,F não é uma função injetiva. Assim, F (x1) = F (x2) para algum x1 6= x2 em A. Pela denição de F , istosignica que o menor número primo que divide x1 é igual ao menor número primo que divide x2. Assim,dois números em A, x1 e x2, tem um divisor comum maior que 1.

8. Suponha um grupo de 40 pessoas, todas na faixa de 17 a 34 anos. Você quer fazer uma aposta que o grupopossui pelo menos x pessoas com a mesma idade. Qual é o maior valor de x que você pode apostar comcerteza para vencer a aposta?

Resposta:

No intervalo de 17 a 34, temos 18 anos. Como 40 > 18 × 2, pelo princípio da casa de pombo existem pelomenos x = 3 pessoas da mesma idade. Como 18× 3 > 40, não é possível garantir que mais que três pessoastêm a mesma idade. Assim, x deve ser 3.

9. Um grupo de 15 executivos usará os serviços de cinco assistentes. Cada executivo tem exatamente um assis-tente e nenhum assistente trabalha para mais de quatro executivos. Mostre que pelo menos três assistentestrabalham para três ou mais executivos.

Resposta:

Seja k o número de assistentes que trabalham para três ou mais executivos. Como nenhum assistente trabalhapara mais que quatro executivos, estes assistentes trabalham para no máximo 4k executivos. Cada um dosoutros 5−k assistentes trabalham para no máximo dois executivos. Assim, estes assistentes trabalham parano máximo 2(5 − k) = 10 − 2k executivos. Assim, o número máximo de executivos que têm assistentes é4k+(10−2k) = 10+2k. Neste caso, temos 15 executivos com assistentes, ou seja, 15 ≤ 10+2k, or k ≥ 5/2.Como k é um número inteiro temos que k ≥ 3. Assim, pelo menos três assistentes trabalham para três oumais executivos.

10. Uma rede de computadores é formada por seis computadores. Cada computador é diretamente conectadoa zero ou mais computadores. Mostre que existem pelo menos dois computadores na rede que possuem omesmo número de conexões, ou seja, estão conectados diretamente ao mesmo número de outros computa-dores.

Resposta:

Cada computador pode estar conectado a zero, um, dois, etc., até cinco computadores, já que existemseis computadores. No entanto, podemos observar que simultaneamente não podemos ter um computadorconectado a nenhum outro (zero conexões) e um outro conectado a cinco computadores (todos os outros). (Seum computador não está conectado a nenhum computador então nenhum outro computador está conectado

2

Page 3: Lista de Exercícios 6: Soluções

a todos os cinco; e se um computador está conectado a todos os cinco então nenhum computador está semconexão.) Assim, temos cinco possibilidades para o número de conexões e seis computadores. Pelo princípioda casa de pombo, temos pelo menos dois computadores que possuem o mesmo número de conexões.

11. Dezenove pessoas têm o primeiro nome Zeca, Wally e Linda, o segundo nome Lucas e Davi, e o último nomeYu, Zamora e Santos. Mostre que pelo menos duas pessoas têm os mesmos três nomes.

Resposta:

O número total de combinações de nomes diferentes é dado por

3︸ ︷︷ ︸# possibilidades para

o primeiro nome

× 2︸ ︷︷ ︸# possibilidades para

o segundo nome

× 3︸ ︷︷ ︸# possibilidades para

o terceiro nome

= 18

Como existem 19 pessoas e 18 possibilidades de nomes diferentes, pelo princípio da casa de pombo existempelo menos duas pessoas que têm os mesmos três nomes.

12. Sejam cinco pontos distintos no plano, todos com coordenadas inteiras. Mostre que algum par de pontos temum ponto intermediário que também tem coordenadas inteiras. (O ponto intermediário é obtido tomandoas médias das coordenadas x e y.)

Resposta:

A coordenada x de cada ponto é um número par ou ímpar. O mesmo vale para a coordenada y. Setomarmos dois pontos quaisquer, temos quatro possibilidades diferentes de tipos de coordenadas para essespontos. Como existem cinco pontos e quatro possibilidades temos que pelo menos dois pontos pi = (xi, yi)e pj = (xj , yj) têm:

Ambos xi e xj pares ou ambos xi e xj ímpares, e Ambos yi e yj pares ou ambos yi e yj ímpares.

Assim, xi + xj é par e yi + yj também é par e, consequentemente, o ponto intermediário (xi+xj

2 ,yi+yj

2 )também tem coordenadas inteiras.

Função de complexidade

13. Sejam as seguintes funções:

g1 = n1

logn g2 = ln lnn g3 = (lnn)2 g4 = n

g5 = 2logn g6 = n log n g7 = log(n!) g8 = n2

g9 = 4logn g10 = ( 32 )n g11 = 2n g12 = en

e os seguintes fatos (a > 0, b > 0, c > 0, n ∈ R):

log n = log2n lnn = logen

a = blogba logc(ab) = logca+ logcb

logban = nlogba logba = logca

logcb

logba = 1logab

alogbn = nlogba

n1

logn = nlogn2 = 2 2logn = n

4logn = 22 logn = 2logn2

= n2 n! ∼ (ne )n

log(n!) = Θ(n log n)

Mostre para cada par de funções gi e gi+1 para 1 ≤ i ≤ 11 se gi é O ou Θ de gi+1.

Resposta:

Algumas simplicações:

g1 = n1

logn = nlogn 2 = 2

3

Page 4: Lista de Exercícios 6: Soluções

g5 = 2logn = n

g7 = log(n!) = Θ(n log n)

g9 = 4logn = (22)logn = 2logn2

= n2

Logo, baseado nas simplicações acima, o seguinte crescimento assintótico pode ser denido:

g1 = O(g2)

g2 = O(g3)

g3 = O(g4)

g4 = Θ(g5)

g5 = O(g6)

g6 = Θ(g7)

g7 = O(g8)

g8 = Θ(g9)

g9 = O(g10)

g10 = O(g11)

g11 = O(g12)

14. A seguinte hierarquia de funções pode ser denida do ponto de vista assintótico:

1 ≺ log log n ≺ log n ≺ nε ≺ nc ≺ nlogn ≺ cn ≺ nn ≺ ccn

Indique, para cada par de expressões (A,B) na tabela abaixo, se a função A é O, o,Ω, ω ou Θ da função B.Assuma que k ≥ 1 e 0 < ε < 1 < c são constantes. Sua resposta deve ser da forma sim ou não.

Nota: logk n ≡ log log . . .︸ ︷︷ ︸k

n. Na letra (v), m é um número inteiro positivo.

A B O o Ω ω Θ

(i) logkn nε

(ii) nk cn

(iii)√n nsinn

(iv) 2n 2n/2

(v) nlogm mlogn

(vi) log(n!) log(nn)

Resposta:

A B O o Ω ω Θ

(i) logkn nε S S N N N

(ii) nk cn S S N N N

(iii)√n nsinn N N N N N

(iv) 2n 2n/2 N N S S N

(v) nlogm mlogn S N S N S

(vi) log(n!) log(nn) S N S N S

4

Page 5: Lista de Exercícios 6: Soluções

Comentários:

(i) Direto da hierarquia: logkn ≺ nε. Logo logkn não pode ser Ω, ω ou Θ de nε. Lembre que se f(n) =Θ(g(n)) então f(n) = Ω(g(n)) e f(n) = O(g(n)).

(ii) Direto da hierarquia: nk ≺ cn. Mesma explicação de (i).

(iii)√n = n

12 e nsinn = nα, onde α é um valor no intervalo [−1, 1]. Logo,

√n não é O, o,Ω, ω ou Θ de

nsinn.

(iv) 2n?= 2n/2. Se esta armativa é verdadeira então

2n ≤ c.2n/2 ⇒ c ≥ 2n/2

Quando n cresce não existe nenhuma constante c que seja maior que 2n/2. Logo, 2n 6= O(2n/2). Comoconsequência disso, também não será nem o nem Θ. No entanto, existe uma constante c tal quec.2n/2 ≤ 2n. Por exemplo, c = 1 e n ≥ 2. Logo, 2n = Ω(2n/2). Para saber se também é ω bastavericar se o seguinte limite é verdadeiro:

limn→∞

2n/2

2n?= 0

Pode-se vericar que este limite é de fato 0, ou seja, limn→∞2n/2

2n = limn→∞1

2n/2= 0.

(v) Seja b, (b ≥ 2) a base do logaritmo usada neste exercício. Seja logn b = c. Então,

nlogbm = nlogn mlogn b = n

1c . lognm = nlognm

1/c

= m1c

Da mesma forma,mlogb n = m

1logn b = m

1c

Ou seja, independente da base do logaritmo, nlogm = mlogn. Logo, nlogm é O, Ω e Θ de mlogn.Consequentemente, não pode ser nem o nem ω.

(vi) log(n!) = Θ(n log n) e log(nn) = n log n. Logo, log(n!) é O, Ω e Θ de log(nn). Da mesma forma, nãopode ser nem o nem ω.

15. Usando a denição formal de Θ prove que 6n3 6= Θ(n2).

Resposta:

Suponha que não, ou seja, suponha que 6n3 = Θ(n2). Assim, pela denição formal da notação Θ, existemconstantes positivas c1, c2 e n0 tais que

0 ≤ c1g(n) ≤ f(n) ≤ c2g(n)

para todo n ≥ n0. Neste caso, temos que f(n) = 6n3, g(n) = n2 e

c1n2 ≤ 6n3 ≤ c2n2.

Ao dividirmos cada termo dessa inequação por n2, temos:

c1 ≤ 6n ≤ c2.

Não existem constantes positivas c2 > 0 e n0 tais que 6n ≤ c2 para todo n ≥ n0. Assim, a suposição originalque é verdadeira, ou seja, 6n3 6= Θ(n2).

16. O que signica um algoritmo ser O(2) ou O(5)?

Resposta:

Signica que independentemente do tamanho da entrada n, o tempo de execução do algoritmo será constante.Observe que se f(n) = O(k) para uma função constante k, temos que:

f(n) ≤ c · k.

Se a constante k é 1 ou 2 ou 5 isso é indiferente pois a função f(n) sempre será limitada por uma constantec vezes uma outra constante k.

5

Page 6: Lista de Exercícios 6: Soluções

17. Use o Teorema Mestre para resolver a seguinte equação de recorrência: T (n) = 4T (n2 ) + n.

Resposta:

Para saber se o Teorema Mestre pode ser aplicado ou não, temos que ter as constantes a ≥ 1 e b > 1 e afunção f(n) assintoticamente positiva. Temos a = 4, b = 2, f(n) = n e as três condições são satisfeitas.

Deve-se analisar se a equação de recorrência cai em um dos três casos previstos do teorema ou não. Paraisso, devemos comparar a função f(n) com a função nlogb a, ou seja:

f(n) : nlogb a

n : nlog2 4

n : n2.

A função nlogb a domina a função f(n) por um fator polinomial n1. Assim, o caso 1 do Teorema Mestre seaplica e temos que T (n) = Θ(n2).

18. Use o Teorema Mestre para resolver a seguinte equação de recorrência: T (n) = 4T (n2 ) + n2.

Resposta:

Para saber se o Teorema Mestre pode ser aplicado ou não, temos que ter as constantes a ≥ 1 e b > 1 e afunção f(n) assintoticamente positiva. Temos a = 4, b = 2, f(n) = n2 e as três condições são satisfeitas.

Deve-se analisar se a equação de recorrência cai em um dos três casos previstos do teorema ou não. Paraisso, devemos comparar a função f(n) com a função nlogb a, ou seja:

f(n) : nlogb a

n2 : nlog2 4

n2 : n2.

As duas funções f(n) e nlogb a têm a mesma taxa de crescimento. Assim, o caso 2 do Teorema Mestre seaplica e temos que T (n) = Θ(n2 log n).

19. Use o Teorema Mestre para resolver a seguinte equação de recorrência: T (n) = 4T (n2 ) + n3.

Resposta:

Para saber se o Teorema Mestre pode ser aplicado ou não, temos que ter as constantes a ≥ 1 e b > 1 e afunção f(n) assintoticamente positiva. Temos a = 4, b = 2, f(n) = n3 e as três condições são satisfeitas.

Deve-se analisar se a equação de recorrência cai em um dos três casos previstos do teorema ou não. Paraisso, devemos comparar a função f(n) com a função nlogb a, ou seja:

f(n) : nlogb a

n3 : nlog2 4

n3 : n2.

A função f(n) domina a função nlogb a por um fator polinomial n1. Assim, o caso 3 do Teorema Mestrepode ser aplicado se a condição de regularidade for satisfeita, ou seja, af(nb ) ≤ cf(n) para uma constantec < 1.

af(nb ) ≤ cf(n)

4(n2 )3 ≤ cn3

4n3

8 ≤ cn3

12n

3 ≤ cn3.

A inequação é satisfeita para c = 12 . Portanto, o caso 3 do Teorema Mestre se aplica e T (n) = Θ(n3).

20. O tempo de execução de um algoritmo A é descrito pela recorrência

T (n) = 7T (n2 ) + n2.

Um outro algoritmo A′ tem um tempo de execução descrito pela recorrência

T ′(n) = aT ′(n4 ) + n2.

6

Page 7: Lista de Exercícios 6: Soluções

Qual é o maior valor inteiro de a tal que A′ é assintoticamente mais rápido que A?

Resposta:

Para o algoritmo A′ ser assintoticamente mais rápido que A, T ′(n) deve ter uma taxa de crescimento menorque T (n). Vamos avaliar se o Teorema Mestre pode ser utilizado para a obtenção dos valores de T ′(n) eT (n).

Vamos resolver T (n) = 7T (n2 ) + n2. Temos a = 7, b = 2, f(n) = n2. Devemos comparar a função f(n) coma função nlogb a, ou seja:

f(n) : nlogb a

n2 : nlog2 7

n2 : n2,807...

A função nlogb a domina a função f(n) por um fator polinomial aproximado de n0,807. Assim, de fatopodemos aplicar o caso 1 do Teorema Mestre e temos que T (n) = Θ(n2,807).

Vamos resolver T ′(n) = aT (n4 ) + n2. Temos a = a, b = 4, f(n) = n2. Devemos comparar a função f(n) coma função nlogb a, ou seja:

f(n) : nlogb a

n2 : nlog4 a

Para A′ ser assintoticamente mais rápido que A, devemos ter o expoente log4 a menor que log2 7 (os doisexpoentes da função nlogb a para a resolução de T ′ e T , respectivamente), ou seja,

log4 a < log2 7

log2 a

log2 4< log2 7

log2 a < 2 log2 7

log2 a < log2 49

Assim, a constante a = 48 é o maior inteiro menor que 49.

Vamos resolver T ′(n) = 48T (n4 ) + n2. Temos a = 48, b = 4, f(n) = n2. Devemos comparar a função f(n)com a função nlogb a, ou seja:

f(n) : nlogb a

n2 : nlog4 48

n2 : n2,792...

Novamente temos que a função nlogb a domina a função f(n) por um fator polinomial aproximado de n0,792.Assim, de fato podemos aplicar o caso 1 do Teorema Mestre e temos que T ′(n) = Θ(n2,792).

Finalmente podemos armar que o algoritmo A′, que é Θ(n2,792), é assintoticamente mais rápido que oalgoritmo A, que é Θ(n2,807).

Observações: Para os exercícios 21 a 65 considere que:

(a) todas as variáveis e constantes são inteiras e positivas, a menos que sejam explicitamente identicadasde outra forma;

(b) as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vista de crescimento assintótico;

(c) p(n) =∑gi=0 ain

i é um polinômio de grau g, as constantes ai (1 ≤ i ≤ g) reais, sendo ag 6= 0, e k umaconstante.

Para cada armação nos exercícios 21 a 65, diga se é verdadeira ou falsa, provando ou fornecendo um contra-exemplo:

7

Page 8: Lista de Exercícios 6: Soluções

21. Se k ≥ g, então p(n) = O(nk).

Resposta:

A armação é verdadeira.

Temos que f(n) = O(g(n)) se existirem constantes positivas c e n0, tais que f(n) ≤ cg(n) para todo n ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

agng + ag−1n

g−1 + . . .+ a0 ≤ cnk

para todo n ≥ n0.Se dividirmos a inequação por nk temos:

agnk−g

+ag−1nk−g−1

+ . . .+a0nk≤ c.

À medida que n cresce, cada termo (fração) do lado esquerdo da inequação ca menor. Assim, é possívelachar constantes c e n0 que satisfazem a inequação acima.

22. Se k ≤ g, então p(n) = Ω(nk).

Resposta:

A armação é verdadeira.

Temos que f(n) = Ω(g(n)) se existirem constantes positivas c e n0, tais que cg(n) ≤ f(n) para todo n ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

cnk ≤ agng + ag−1ng−1 + . . .+ a0

para todo n ≥ n0.Se dividirmos a inequação por nk temos:

c ≤ agng−k + ag−1ng−k−1 + . . .+ a0n

−k.

À medida que n cresce, cada termo (fração) do lado direito da inequação ca menor mas positivo. Assim,é possível achar constantes c e n0 que satisfazem a inequação acima.

23. Se k = g, então p(n) = Θ(nk).

Resposta:

A armação é verdadeira.

Temos que f(n) = Θ(g(n)) se existirem constantes positivas c1, c2 e n0, tais que c1g(n) ≤ f(n) ≤ c2g(n)para todo n ≥ n0.Vamos supor que existem constantes positivas c1, c2 e n0, tais que

c1nk ≤ agng + ag−1n

g−1 + . . .+ a0 ≤ c2nk

para todo n ≥ n0.Se dividirmos a inequação por nk temos:

c1 ≤ ag +ag−1n

+ . . .+a0nk≤ c2.

Conhecendo os coecientes do polinômio, é possível determinar constantes positivas n0, c1 e c2 que satisfazema inequação acima.

24. Se k > g, então p(n) = o(nk).

Resposta:

A armação é verdadeira.

Temos que f(n) = o(g(n)) se para todas constantes positivas c e n0, tais que f(n) < cg(n) para todo n ≥ n0.Vamos supor que para todas constantes positivas c e n0

agng + ag−1n

g−1 + . . .+ a0 < cnk

8

Page 9: Lista de Exercícios 6: Soluções

para todo n ≥ n0.Se tomarmos o limite de

limn→∞

agng + ag−1n

g−1 + . . .+ a0nk

= 0

para todas as constantes c > 0 e n0 > 1.

25. Se k < g, então p(n) = ω(nk).

Resposta:

A armação é verdadeira.

Temos que f(n) = ω(g(n)) se para todas constantes positivas c e n0, tais que cg(n) < f(n) para todo n ≥ n0.Vamos supor que para todas constantes positivas c e n0

cnk < agng + ag−1n

g−1 + . . .+ a0

para todo n ≥ n0.Se tomarmos o limite de

limn→∞

nk

agng + ag−1ng−1 + . . .+ a0=∞

para todas as constantes c > 0 e n0 > 1.

26. Se k ≥ g, então p(n) = O(ng).

Resposta:

A armação é verdadeira.

Neste caso, a constante k não tem nenhuma relação com a expressão p(n) = O(ng) já que

agng + ag−1n

g−1 + . . .+ a0 ≤ cng.

Se dividirmos a inequação por ng temos:

ag +ag−1n

+ . . .+a0ng≤ c.

À medida que n cresce, cada termo (fração) do lado esquerdo da inequação ca menor. Assim, é possívelachar constantes c e n0 que satisfazem a inequação acima. De fato, a função ng é um limite assintóticosuperior rme para a função p(n).

27. Se k ≤ g, então p(n) = Ω(ng).

Resposta:

A armação é verdadeira.

Neste caso, a constante k não tem nenhuma relação com a expressão p(n) = Ω(ng) já que

cng ≤ agng + ag−1ng−1 + . . .+ a0.

Se dividirmos a inequação por ng temos:

c ≤ ag +ag−1n

+ . . .+a0ng.

À medida que n cresce, cada termo (fração) do lado direito da inequação ca menor mas positivo. Assim,é possível achar constantes c e n0 que satisfazem a inequação acima. De fato, a função ng é um limiteassintótico inferior rme para a função p(n).

28. Se k = g, então p(n) = Θ(ng).

Resposta:

A armação é verdadeira.

Neste caso, a constante k não tem nenhuma relação com a expressão p(n) = Θ(ng) já que

c1ng ≤ agng + ag−1n

g−1 + . . .+ a0 ≤ c2ng.

9

Page 10: Lista de Exercícios 6: Soluções

Se dividirmos a inequação por ng temos:

c1 ≤ ag +ag−1n

+ . . .+a0ng≤ c2.

Conhecendo os coecientes do polinômio, é possível determinar constantes positivas n0, c1 e c2 que satisfazema inequação acima.

29. Se k > g, então p(n) = o(ng).

Resposta:

A armação é falsa.

Neste caso, a constante k não tem nenhuma relação com a expressão p(n) = o(ng). Assim, temos que:

agng + ag−1n

g−1 + . . .+ a0 < cng.

Se dividirmos a inequação por ng temos:

ag +ag−1n

+ . . .+a0ng

< c.

Não existem constantes c > 0 e n0, tais que para todo n ≥ n0, a inequação acima seja verdadeira. Comomostrado no exercício 26, a função ng é um limite assintótico superior rme para a função p(n). Assim, nãopodemos ter p(n) = o(ng).

30. Se k < g, então p(n) = ω(ng).

Resposta:

A armação é falsa.

Neste caso, a constante k não tem nenhuma relação com a expressão p(n) = ω(ng). Assim, temos que:

cng < agng + ag−1n

g−1 + . . .+ a0.

Se dividirmos a inequação por ng temos:

ag +ag−1n

+ . . .+a0ng

< c.

Não existem constantes c > 0 e n0, tais que para todo n ≥ n0, a inequação acima seja verdadeira. Comomostrado no exercício 27, a função ng é um limite assintótico inferior rme para a função p(n). Assim, nãopodemos ter p(n) = ω(ng).

31. f(n) = O(g(n)) implica em g(n) = O(f(n)).

Resposta:

A armação é falsa.

Seja f(n) = n e g(n) = n2. Sabemos que f(n) = O(g(n)), i.e., n = O(n2) mas g(n) 6= O(g(n)), i.e.,n2 6= O(n).

Se f(n) = O(g(n)) então g(n) = Ω(f(n)). Em outras palavras, se a função g(n) é um limite superiorassintótico para f(n) então a função f(n) é um limite inferior assintótico para g(n).

32. É possível achar funções f(n) e g(n) tais que f(n) = Θ(g(n)).

Resposta:

A armação é falsa.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Suponha que seja possível achar funções f(n) e g(n) tais que f(n) = Θ(g(n)). Portanto, f(n) = O(g(n)) ef(n) = Ω(g(n)), pela denição da notação assintótica Θ. Como f(n) ≺ g(n), tem-se que f(n) = O(g(n)) ef(n) 6= Ω(g(n)). Assim, não é possível achar funções f(n) e g(n) tais que f(n) = Θ(g(n)).

10

Page 11: Lista de Exercícios 6: Soluções

33. f(n) + g(n) = Ω(f(n)).

Resposta:

A armação é verdadeira.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que f(n) + g(n) = Ω(f(n)) se existirem constantes positivas c e n0, tais que cf(n) ≤ f(n) + g(n)para todo n ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

cf(n) ≤ f(n) + g(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por f(n), temos:

c ≤ 1 +g(n)

f(n).

Dado que f(n) ≺ g(n), é possível denir n0 tal que para todo n ≥ n0,g(n)f(n) > 1. Assim, para c = 1 a

inequação é satisfeita.

34. f(n) + g(n) = Θ(f(n)).

Resposta:

A armação é falsa.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que f(n)+g(n) = Θ(f(n)) se existirem constantes positivas c1, c2 e n0, tais que c1f(n) ≤ f(n)+g(n) ≤c2f(n) para todo n ≥ n0.Vamos supor que existem constantes positivas c1, c2 e n0, tais que

c1f(n) ≤ f(n) + g(n) ≤ c2f(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por f(n), temos:

c1 ≤ 1 +g(n)

f(n)≤ c2.

Dado que f(n) ≺ g(n), não existe c2 tal que 1+ g(n)f(n) ≤ c2 para todo n ≥ n0. Assim, f(n)+g(n) 6= Θ(f(n)).

35. f(n) + g(n) = O(f(n)).

Resposta:

A armação é falsa.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que f(n) + g(n) = O(f(n)) se existirem constantes positivas c e n0, tais que f(n) + g(n) ≤ cf(n)para todo n ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

f(n) + g(n) ≤ cf(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por f(n), temos:

1 +g(n)

f(n)≤ c.

Dado que f(n) ≺ g(n), não existe c tal que 1 + g(n)f(n) ≤ c para todo n ≥ n0. Assim, f(n) + g(n) 6= O(f(n)).

11

Page 12: Lista de Exercícios 6: Soluções

36. f(n) + g(n) = Ω(g(n)).

Resposta:

A armação é verdadeira.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que f(n)+g(n) = Ω(g(n)) se existirem constantes positivas c e n0, tais que cg(n) ≤ f(n)+g(n) paratodo n ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

cg(n) ≤ f(n) + g(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por g(n), temos:

c ≤ f(n)

g(n)+ 1.

Dado que f(n) ≺ g(n), é possível escolher c = 1 que satisfaz a inequação. Assim, f(n) + g(n) = Ω(g(n)).

37. f(n) + g(n) = Θ(g(n)).

Resposta:

A armação é verdadeira.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que f(n)+g(n) = Θ(g(n)) se existirem constantes positivas c1, c2 e n0, tais que c1g(n) ≤ f(n)+g(n) ≤c2g(n) para todo n ≥ n0.Vamos supor que existem constantes positivas c1, c2 e n0, tais que

c1g(n) ≤ f(n) + g(n) ≤ c2g(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por g(n), temos:

c1 ≤f(n)

g(n)+ 1 ≤ c2.

Dado que f(n) ≺ g(n), para n sucientemente grande temos que f(n)g(n) < 1. Assim, existe c2 tal que

f(n)g(n) + 1 ≤ c2 para todo n ≥ n0. Consequentemente, f(n) + g(n) = Θ(g(n)).

38. f(n) + g(n) = O(g(n)).

Resposta:

A armação é verdadeira.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que f(n) + g(n) = O(g(n)) se existirem constantes positivas c e n0, tais que f(n) + g(n) ≤ cg(n)para todo n ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

f(n) + g(n) ≤ cg(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por g(n), temos:

f(n)

g(n)+ 1 ≤ c.

Dado que f(n) ≺ g(n), para n sucientemente grande temos que f(n)g(n) < 1. Assim, existe c tal que f(n)

g(n) +1 ≤ cpara todo n ≥ n0. Consequentemente, f(n) + g(n) = O(g(n)).

12

Page 13: Lista de Exercícios 6: Soluções

39. f(n) = Ω((f(n))2).

Resposta:

A armação é falsa.

Temos que f(n) = Ω((f(n))2) se existirem constantes positivas c e n0, tais que c(f(n))2 ≤ f(n) para todon ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

c(f(n))2 ≤ f(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por f(n), temos:

cf(n) ≤ 1.

Veja que f(n) é uma função positiva. Mais ainda, podemos ter que quando n cresce o valor de f(n)também cresce (e.g., uma função exponencial). Assim, não é possível escolher uma constante c que quandomultiplicada por f(n), para todo n ≥ n0, termos um valor maior ou igual a 1. Assim, f(n) 6= Ω((f(n))2).

40. f(n) = Θ((f(n))2).

Resposta:

A armação é falsa.

Sabemos que se a(n) = Θ(b(n)) então a(n) = Ω(b(n)) e a(n) = O(b(n)). De acordo com o exercício 39,temos f(n) 6= Ω((f(n))2). Consequentemente, f(n) 6= Θ((f(n))2).

41. f(n) = O((f(n))2).

Resposta:

A armação é verdadeira.

Temos que f(n) = O((f(n))2) se existirem constantes positivas c e n0, tais que f(n) ≤ c(f(n))2 para todon ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

f(n) ≤ c(f(n))2

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por f(n), temos:

1 ≤ cf(n).

Veja que f(n) é uma função positiva. Assim, para toda constante c positiva a inequação é verdadeira.Consequentemente, f(n) = O((f(n))2)

42. g(n) = Ω(f(n)).

Resposta:

A armação é verdadeira.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que g(n) = Ω(f(n)) se existirem constantes positivas c e n0, tais que cf(n) ≤ g(n) para todo n ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

cf(n) ≤ g(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por f(n), temos:

c ≤ g(n)

f(n).

Dado que f(n) ≺ g(n), é possível escolher c = 1 que satisfaz a inequação. Assim, g(n) = Ω(f(n)).

13

Page 14: Lista de Exercícios 6: Soluções

43. g(n) = Θ(f(n)).

Resposta:

A armação é falsa.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que g(n) = Θ(f(n)) se existirem constantes positivas c1, c2 e n0, tais que c1f(n) ≤ g(n) ≤ c2f(n)para todo n ≥ n0.Vamos supor que existem constantes positivas c1, c2 e n0, tais que

c1f(n) ≤ g(n) ≤ c2f(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por f(n), temos:

c1 ≤g(n)

f(n)≤ c2.

Dado que f(n) ≺ g(n), para n sucientemente grande temos que g(n)f(n) > 1. Assim, não existe c2 tal que

g(n)f(n) ≤ c2 para todo n ≥ n0. Consequentemente, g(n) 6= Θ(f(n)).

44. g(n) = O(f(n)).

Resposta:

A armação é falsa.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que g(n) = O(f(n)) se existirem constantes positivas c e n0, tais que g(n) ≤ cf(n) para todo n ≥ n0.Vamos supor que existem constantes positivas c e n0, tais que

g(n) ≤ cf(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por f(n), temos:

g(n)

f(n)≤ c.

Dado que f(n) ≺ g(n), para n sucientemente grande temos que g(n)f(n) > 1. Assim, não existe c tal que

g(n)f(n) ≤ c para todo n ≥ n0. Consequentemente, g(n) 6= O(f(n)).

45. g(n) = Ω( g(n)2 ).

Resposta:

A armação é verdadeira.

Temos que g(n) = Ω( g(n)2 ) se existirem constantes positivas c e n0, tais que cg(n)2 ≤ g(n) para todo n ≥ n0.

Vamos supor que existem constantes positivas c e n0, tais que

cg(n)

2≤ g(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por g(n) e multiplicarmos, temos:

c ≤ 2.

Assim, g(n) = Ω( g(n)2 ).

14

Page 15: Lista de Exercícios 6: Soluções

46. g(n) = Θ( g(n)2 ).

Resposta:

A armação é verdadeira.

Temos que g(n) = Θ( g(n)2 ) se existirem constantes positivas c1, c2 e n0, tais que c1g(n)2 ≤ g(n) ≤ c2

g(n)2

para todo n ≥ n0.Vamos supor que existem constantes positivas c1, c2 e n0, tais que

c1g(n)

2≤ g(n) ≤ c2

g(n)

2

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por g(n) e multiplicarmos por 2, temos:

c1 ≤ 2 ≤ c2.

Assim, g(n) = Θ( g(n)2 ).

47. g(n) = O( g(n)2 ).

Resposta:

A armação é verdadeira.

Sabemos que se a(n) = Θ(b(n)) então a(n) = Ω(b(n)) e a(n) = O(b(n)). De acordo com o exercício 46,temos g(n) = Θ( g(n)2 ). Consequentemente, g(n) = O( g(n)2 ).

48. f(n) = ω(g(n)).

Resposta:

A armação é falsa.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que f(n) = ω(g(n)) se para todas constantes positivas c e n0, tais que cg(n) < f(n) para todo n ≥ n0.Vamos supor que para todas constantes positivas c e n0

cg(n) < f(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por f(n), temos:

cg(n)

f(n)≤ 1.

A fração g(n)f(n) é estritamente positiva. Assim, não é possível achar nenhuma constante c que multiplicada

por g(n)f(n) seja sempre menor ou igual a 1 quando n cresce. Consequentemente, f(n) 6= Ω(g(n)).

49. f(n) = ω( g(n)2 ).

Resposta:

A armação é falsa.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que f(n) = ω( g(n)2 ) se para todas constantes positivas c e n0, tais que cg(n)2 < f(n) para todo n ≥ n0.

Vamos supor que para todas constantes positivas c e n0

cg(n)

2< f(n)

para todo n ≥ n0.

15

Page 16: Lista de Exercícios 6: Soluções

Ao dividirmos cada termo dessa inequação por f(n) e multiplicarmos por 2, temos:

cg(n)

f(n)≤ 2.

A fração g(n)f(n) é estritamente positiva. Assim, não é possível achar nenhuma constante c que multiplicada

por g(n)f(n) seja sempre menor ou igual a 2 quando n cresce. Consequentemente, f(n) 6= Ω( g(n)2 ).

50. f(n) = o(g(n)).

Resposta:

A armação é verdadeira.

De acordo com a observação (b) acima, as funções f(n) e g(n) são positivas e f(n) ≺ g(n) do ponto de vistade crescimento assintótico.

Temos que f(n) = o(g(n)) se para todas constantes positivas c e n0, f(n) < cg(n) para todo n ≥ n0.Vamos supor que para todas constantes positivas c e n0

f(n) < cg(n)

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por g(n), temos:

f(n)

g(n)≤ 1.

A fração f(n)g(n) é estritamente positiva e sempre menor que 1 já que f(n) ≺ g(n). Assim, f(n) = o(g(n)).

51. n2 + 1010100

n+ 123 = O(n).

Resposta:

A armação é falsa.

Para essa armação ser verdadeira, de acordo a denição da notação assintótica O, devem existir constantespositivas c e n0, tais que

n2 + 1010100

n+ 123 ≤ cn

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por n, temos:

n+ 1010100

+123

n≤ c.

Não existe constante positiva c que seja limitada pelo termo da esquerda da inequação à medida que ncresce. Assim, n2 + 1010

100

n+ 123 6= O(n).

52. 1 + 2 + 3 + . . .+ n = n2 + Ω(n).

Resposta:

A armação é verdadeira.

Sabe-se que

1 + 2 + 3 + . . .+ n =n(n+ 1)

2=n2 + n

2=n2

2+n

2= n2 − n2

2+n

2= n2 + (−n

2

2+n

2).

Seja h(n) = −n2

2 + n2 . A armação será verdadeira se h(n) ∈ Ω(n), i.e., se h(n) = Ω(n).

Pela denição da notação assintótica Ω, h(n) = Ω(n) se existirem constantes positivas c e n0 tais quecn ≤ |h(n)| para todo n ≥ n0.Vamos supor que existem constantes positivas c e n0 tais que

cn ≤ |h(n)|

16

Page 17: Lista de Exercícios 6: Soluções

para todo n ≥ n0, ou seja,

cn ≤∣∣∣∣− n2

2+n

2

∣∣∣∣.Ao dividirmos cada termo dessa inequação por n, temos:

c ≤∣∣∣∣− n

2+

1

2

∣∣∣∣.Para n0 = 2 e c = 1

2 a inequação é satisfeita. Assim, 1 + 2 + 3 + . . .+ n = n2 + Ω(n).

53. 1 + 2 + 3 + . . .+ n = n2 + Θ(1).

Resposta:

A armação é falsa.

Sabe-se que

1 + 2 + 3 + . . .+ n =n(n+ 1)

2=n2 + n

2=n2

2+n

2= n2 − n2

2+n

2= n2 + (−n

2

2+n

2).

Seja h(n) = −n2

2 + n2 . A armação será verdadeira se h(n) ∈ Θ(1), i.e., se h(n) = Θ(1).

Pela denição da notação assintótica Θ, h(n) = Θ(1) se existirem constantes positivas c1, c2 e n0 tais quec1 · 1 ≤ |h(n)| ≤ c2 · 1 para todo n ≥ n0, ou seja, se

c1 ≤∣∣∣∣− n2

2+n

2

∣∣∣∣ ≤ c2.No entanto, não existe constante c2 que sempre limite a expressão | − n2

2 + n2 |. Assim, 1 + 2 + 3 + . . .+ n 6=

n2 + Θ(1).

54. 1 + 2 + 3 + . . .+ n = n2 +O(n).

Resposta:

A armação é falsa.

Sabe-se que

1 + 2 + 3 + . . .+ n =n(n+ 1)

2=n2 + n

2=n2

2+n

2= n2 − n2

2+n

2= n2 + (−n

2

2+n

2).

Seja h(n) = −n2

2 + n2 . A armação será verdadeira se h(n) ∈ O(n), i.e., se h(n) = O(n).

Pela denição da notação assintótica O, h(n) = O(n) se existirem constantes positivas c e n0 tais que|h(n)| ≤ cn para todo n ≥ n0.Vamos supor que existem constantes positivas c e n0 tais que∣∣∣∣− n2

2+n

2

∣∣∣∣ ≤ cnpara todo n ≥ n0.Ao dividirmos cada termo dessa inequação por n, temos∣∣∣∣− n

2+

1

2

∣∣∣∣ ≤ c.No entanto, não existe constante c que sempre limite a expressão | − n

2 + 12 |. Assim, 1 + 2 + 3 + . . .+ n 6=

n2 +O(n).

17

Page 18: Lista de Exercícios 6: Soluções

55.

(n2

)= O(n2).

Resposta:

A armação é verdadeira.

Tem-se que (n2

)=

n!

2!(n− 2)!=n(n− 1)(n− 2)!

2(n− 2)!=n(n− 1)

2=n2 − n

2.

Pela denição da notação assintótica O, n2−n2 = O(n2) se existirem constantes positivas c e n0 tais que

n2−n2 ≤ cn2 para todo n ≥ n0.

Vamos supor que existem constantes positivas c e n0 tais que

n2 − n2

≤ cn2

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por n2, temos

1

2− 1

2n≤ c.

Para n0 = 1 e c = 12 , a inequação é satisfeita. Assim,

(n2

)= O(n2).

56.

(n3

)= O(n3).

Resposta:

A armação é verdadeira.

Tem-se que (n3

)=

n!

3!(n− 3)!=n(n− 1)(n− 2)(n− 3)!

6(n− 3)!=n(n− 1)(n− 2)

6=n3 − 3n2 + 2n

6.

Pela denição da notação assintótica O, n3−3n2+2n6 = O(n3) se existirem constantes positivas c e n0 tais

que n3−3n2+2n6 ≤ cn3 para todo n ≥ n0.

Vamos supor que existem constantes positivas c e n0 tais que

n3 − 3n2 + 2n

6≤ cn3

para todo n ≥ n0.Ao dividirmos cada termo dessa inequação por n3, temos

1

6− 1

2n+

1

3n2≤ c.

Para n0 = 1 e c = 16 , a inequação é satisfeita. Assim,

(n3

)= O(n3).

57. Seja Ω(n2 log n) = X, onde X representa o conjunto de funções que satisfaz a notação Ω para a funçãon2 log n. O conjunto n1.5 log n, ne log n, n2 lnn, log log n, n2, n2.5 ⊂ X?, onde e é a constante de Euler e lné o logaritmo na base e.

Resposta:

A armação é falsa.

O conjunto X possui funções que têm uma taxa de crescimento pelo menos da ordem de n2 log n.

18

Page 19: Lista de Exercícios 6: Soluções

Ao examinarmos cada elemento desse conjunto, temos:

n1.5 log n 6∈ X [função com taxa de crescimento menor que n2 log n]

ne log n ∈ X

n2 lnn ∈ X

log log n 6∈ X [função com taxa de crescimento menor que n2 log n]

n2 ∈ X

n2.5 ∈ X

58. Seja Θ(1) = X, onde X representa o conjunto de funções que satisfaz a notação Θ para a função 1. Oconjunto π, nlogπ 1, e, 2bπ/4cn ⊂ X?, onde e é a constante de Euler.

Resposta:

A armação é verdadeira.

O conjunto X possui funções que têm uma taxa de crescimento exatamente constante.

Ao examinarmos cada elemento desse conjunto, temos:

π ∈ X

nlogπ 1 = n0 = 1 ∈ X

e ∈ X

2bπ/4cn = 20·4 = 1 ∈ X

59. Seja O(ne) = X, onde X representa o conjunto de funções que satisfaz a notação O para a função ne. Oconjunto n2, n log n2, n

π2 log n2, 1

ne ⊂ X?, onde e é a constante de Euler.

Resposta:

A armação é verdadeira.

O conjunto X possui funções que têm uma taxa de crescimento no máximo da ordem de ne.

Ao examinarmos cada elemento desse conjunto, temos:

n2 ∈ X

n log n2 ∈ X

nπ2 log n2 ≈ n1,67 log n2 ∈ X

1

ne∈ X

60. Seja ω(n) = X, onde X representa o conjunto de funções que satisfaz a notação ω para a função n.O conjunto n1.5 log n, ne log n, n2 lnn, log log n, n2, n1.1 ⊂ X?, onde e é a constante de Euler e ln é ologaritmo na base e.

Resposta:

A armação é falsa.

O conjunto X possui funções que têm uma taxa de crescimento estritamente maior que da ordem de n.

Ao examinarmos cada elemento desse conjunto, temos:

n1.5 log n ∈ X

ne log n ∈ X

n2 lnn ∈ X

log log n 6∈ X [função com taxa de crescimento menor que n]

n2 ∈ X

n1.1 ∈ X

19

Page 20: Lista de Exercícios 6: Soluções

61. Seja o(ne) = X, onde X representa o conjunto de funções que satisfaz a notação o para a função ne. Oconjunto n2, n log n2, n

π2 log n2, 1

ne ⊂ X?, onde e é a constante de Euler.

Resposta:

A armação é verdadeira.

O conjunto X possui funções que têm uma taxa de crescimento estritamente menor que da ordem de ne.

Ao examinarmos cada elemento desse conjunto, temos:

n2 ∈ X

n log n2 ∈ X

nπ2 log n2 ≈ n1,67 log n2 ∈ X

1

ne∈ X

62. A derivada de h(n) = n2 é h′(n) = 2n. A derivada de l(n) = 4n2 + 2n é l′(n) = 8n+ 2. Como 2n < 8n+ 2,∀n ≥ 0, h(n) cresce mais lentamente que l(n) e, portanto, h(n) = O(l(n)).

Resposta:

A armação é verdadeira.

A função h(n) cresce mais lentamente que a função l(n). Assim, a função l(n) é um limite superior assintóticopara h(n).

63. O Teorema Mestre pode ser sempre aplicado para resolver qualquer equação de recorrência que tenha aforma geral

T (n) = pq T (np ) + n,

onde p e q são constantes inteiras positivas maiores que 1.Resposta:

A armação é verdadeira.

Tem-se:a = pq

b = pf(n) = n

Para saber se o Teorema Mestre pode ser aplicado ou não, temos que ter as constantes a ≥ 1 e b > 1 e afunção f(n) assintoticamente positiva. Estas três condições são satisfeitas (a > 1 e b > 1, já que p > 1 eq > 1).

Deve-se analisar se a equação de recorrência cai em um dos três casos previstos do teorema ou não. Paraisso, devemos comparar a função f(n) com a função nlogb a, ou seja:

f(n) : nlogb a

n : nlogp pq

n : nq logp p

n : nq.

Como q é uma constante inteira positiva maior que 1, a função nlogb a domina a função f(n) por um fatorpolinomial nq−1. Assim, o caso 1 do Teorema Mestre se aplica e temos que T (n) = Θ(nq).

64. O Teorema Mestre pode ser sempre aplicado para resolver qualquer equação de recorrência que tenha aforma geral

T (n) = T (pnq ) + k,

onde p, q e k são constantes inteiras positivas maiores que 1 e q > p.Resposta:

A armação é verdadeira.

Tem-se:a = 1b = q

p

f(n) = k

20

Page 21: Lista de Exercícios 6: Soluções

Para saber se o Teorema Mestre pode ser aplicado ou não, temos que ter as constantes a ≥ 1 e b > 1 e afunção f(n) assintoticamente positiva. Estas três condições são satisfeitas (a = 1 e b > 1, já que q > p).

Deve-se analisar se a equação de recorrência cai em um dos três casos previstos do teorema ou não. Paraisso, devemos comparar a função f(n) com a função nlogb a, ou seja:

f(n) : nlogb a

k : nlog q

p1

k : n0

k : 1.

Temos duas funções constantes. Assim, o caso 2 do Teorema Mestre se aplica e temos que T (n) = Θ(logn).

65. O Teorema Mestre pode ser sempre aplicado para resolver qualquer equação de recorrência que tenha aforma geral

T (n) = p T (nq ) + n log n,

onde p e q são constantes inteiras positivas, sendo p < q e p ≥ 2.Resposta:

A armação é verdadeira.

Tem-se:a = pb = q

f(n) = n log n

Para saber se o Teorema Mestre pode ser aplicado ou não, temos que ter as constantes a ≥ 1 e b > 1 e afunção f(n) assintoticamente positiva. Estas três condições são satisfeitas (a > 1 e b > 1, já que p ≥ 2 e2 ≤ p < q).

Deve-se analisar se a equação de recorrência cai em um dos três casos previstos do teorema ou não. Paraisso, devemos comparar a função f(n) com a função nlogb a, ou seja:

f(n) : nlogb a

n log n : nlogq p

n log n : nr.

O expoente logq p será um número real r no intervalo entre 0 e 1, já que a base q é maior que p. Assim,a função f(n) = n log n domina a função nlogb a (nr) por um fator polinomial n1−r. O caso 3 do TeoremaMestre pode ser aplicado se a condição de regularidade for satisfeita, ou seja, af(nb ) ≤ cf(n) para umaconstante c < 1:

af(nb ) ≤ cf(n)

p(nq log nq ) ≤ cn log n

pqn log n

q ≤ cn log n

A inequação é satisfeita para c = pq , c < 1, ou seja,

pqn log n

q ≤ pqn log n.

Portanto, o caso 3 do Teorema Mestre se aplica e T (n) = Θ(n log n).

Modelagem usando funções de recorrência

66. Qual é o número máximo de regiões Ln determinado por n retas no plano? Lembre-se que um plano semnenhuma reta tem uma região, com uma reta tem duas regiões e com duas retas têm quatro regiões, conformeilustrado abaixo.

21

Page 22: Lista de Exercícios 6: Soluções

41 2 1 L = 2

1 1

2

12

3

L =

4

0 L =

Resposta:

L0 = 1

L1 = 2

L2 = 4

L3 = 7

... =...

Ln = Ln−1 + n

Com três retas, o número máximo de regiões é sete. Observe que se traçarmos a terceira reta sobre ainterseção das duas anteriores teremos seis regiões. Assim, quando acrescentamos a n-ésima reta, criamosmais n regiões que são obtidas com a interseção com as n− 1 retas já existentes.

1 2 74L = 2L = 3

1 1

2

12

34

12

3

4

7 5

L =

6

0 L = 1

A fórmula fechada para Ln pode ser obtida facilmente a partir da observação que Ln vale a soma de 0 a nmais 1, ou seja,

Ln =( n∑i=0

i)

+ 1 =n(n+ 1)

2+ 1.

Prova (por indução matemática):

Passo base. P (n0) = P (0). Para n = 0 temos que L0 = 0(0+1)2 + 1 = 1, que é o valor presente na equação

de recorrência.

Passo indutivo. Se a fórmula é verdadeira para n = k então deve ser verdadeira para n = k + 1, i.e.,P (k)→ P (k + 1).

Suponha que a fórmula seja verdadeira para n = k, i.e.,

P (k) : Lk =k(k + 1)

2+ 1.

para algum inteiro k ≥ 1. [hipótese indutiva]

Deve-se mostrar que

P (k + 1) : Lk+1 =(k + 1)(k + 2)

2+ 1.

22

Page 23: Lista de Exercícios 6: Soluções

Sabe-se que

Lk+1 = Lk + k [Pela denição da equação de recorrência]

= k(k+1)2 + 1 + k [Pela hipótese indutiva]

= k2+3k+12 + 1

= (k+1)(k+2)2 + 1 [O que devia ser provado]

67. O problema da Torre de Hanoi com requisito de adjacência. Sejam discos de tamanhos diferentes e trêsvaretas, como ilustrado abaixo com oito discos. O jogo começa com o conjunto de discos empilhados emtamanho decrescente na vareta A.

O objetivo é transferir toda a torre da vareta A para a vareta C, movendo um disco de cada vez para umavareta adjacente e nunca movendo um disco maior sobre um menor. Quantos movimentos são necessáriospara mover n discos da vareta A para a vareta C? Observe que a vareta A é adjacente a B que é adjacentea C. No entanto, a vareta A não é adjacente à vareta C.

Resposta:

Na resolução deste problema, vamos identicar os discos como Di, onde i varia de 1 a n, sendo o disco dotopo o D1 e o mais no fundo da pilha o Dn. A tabela abaixo mostra como deve ser feito o movimento dediscos entre as varetas A, B e C, para o caso de um, dois, três e n discos.

Discos Movimentos1 2 D1: A → B; D1: B → C

2 8 D1: A → B; D1: B → C;

D2: A → B;

D1: C → B; D1: B → A;

D2: B → C;

D1: A → B; D1: B → C

3 26 D1 e D2: A → C com custo T (2);

D3: A → B;

D1 e D2: C → A com custo T (2);

D3: B → C;

D1 e D2: A → C com custo T (2)...

...n 3T (n− 1) + 2 D1 a Dn−1: A→ C com custo T (n−1);

Dn: A → B;

D1 a Dn−1: C→ A com custo T (n−1);Dn: B → C;

D1 a Dn−1: A→ C com custo T (n−1)

Pelo visto acima, a quantidade de movimentos de discos para o problema da Torre de Hanoi com a restriçãode movimentos adjacentes entre varetas é

T (0) = 0

T (n) = 3T (n− 1) + 2, para n > 0.

Essa estratégia ca evidente, dada a restrição de movimentação dos discos: deve-se mover os n − 1 discosdo topo para a vareta destino; depois mover o disco do fundo da pilha (Dn) para a vareta do meio; depoismover os n−1 discos da vareta C para a vareta A com o objetivo de mover o disco Dn para a vareta destino;e, nalmente, mover os n− 1 discos da vareta A para a vareta C sobre o disco Dn.

Para pequenos valores de n temos:

23

Page 24: Lista de Exercícios 6: Soluções

Discos Movimentos

0 0

1 2

2 8 = 3·2 + 2 = 2(31 + 30)

3 26 = 32·2 + 3·2 + 2 = 2(32 + 31 + 30)

4 80 = 33·2 + 32·2 + 3·2 + 2 = 2(33 + 32 + 31 + 30)...

...

Esta recorrência pode ser expressa por

T (n) = 2

n−1∑i=0

3i

= 2 · 3n − 1

2= 3n − 1.

Prova (por indução matemática):

Passo base. P (n0) = P (0). Para n = 0 temos que T (0) = 30 − 1 = 0, que é o valor presente na equação derecorrência.

Passo indutivo. Se a fórmula é verdadeira para n = k então deve ser verdadeira para n = k + 1, i.e.,P (k)→ P (k + 1).

Suponha que a fórmula seja verdadeira para n = k, i.e.,

P (k) : T (k) = 3k − 1.

para algum inteiro k ≥ 1. [hipótese indutiva]

Deve-se mostrar queP (k + 1) : T (k + 1) = 3k+1 − 1.

Sabe-se que

T (k + 1) = 3T (k) + 2 [Pela denição da equação de recorrência]

= 3(3k − 1) + 2 [Pela hipótese indutiva]

= 3k+1 − 1 [O que devia ser provado]

24