colect^anea de problemas an alise e s ntese de algoritmos · pdf fileproponha um algoritmo e...

200
Colectˆ anea de Problemas An´ alise e S´ ıntese de Algoritmos Jo˜ao Marques Silva Departamento de Engenharia Inform´atica Instituto Superior T´ ecnico (IST)/INESC-ID e-mail: [email protected] Vers~aoInicial: Junho 2003 URL: http://sat.inesc-id.pt/˜jpms/teaching/reports/

Upload: trinhlien

Post on 31-Jan-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Colectanea de Problemas

Analise e Sıntese de Algoritmos

Joao Marques SilvaDepartamento de Engenharia Informatica

Instituto Superior Tecnico (IST)/INESC-IDe-mail: [email protected]

Vers~ao Inicial: Junho 2003URL: http://sat.inesc-id.pt/˜jpms/teaching/reports/

Page 2: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Resumo

O presente documento agrega os problemas de avaliacao dos testes e exames da dis-ciplina Analise e Sıntese de Algoritmos (ASA), desenvolvidos ao longo dos anos lectivosde 2000/2001, 2001/2002 e 2002/2003. Os objectivos do documento sao por um ladoorganizar os problemas por topicos leccionados e pelo grau de dificuldade que apresen-tam, e por outro disponibilizar aos alunos uma colectanea de problemas de apoio aoestudo de ASA.

i

Page 3: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Conteudo

Introducao 1

Revisao de Algoritmos e Estruturas de Dados 3

Problemas do Tipo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4Problemas do Tipo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Algoritmos para Grafos & Programacao Linear 9

Problemas do Tipo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Problemas do Tipo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Problemas do Tipo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

Sıntese de Algoritmos & Topicos Adicionais 126

Problemas do Tipo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127Problemas do Tipo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161Problemas do Tipo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171

Completude NP & Algoritmos de Aproximacao 179

Problemas do Tipo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180Problemas do Tipo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183Problemas do Tipo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

ii

Page 4: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

iii

Page 5: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 1

Introducao

A presente colectanea de problemas agrega exercıcios de avaliacao dos testes e examesda disciplina Analise e Sıntese de Algoritmos, ao longo dos anos lectivos de 2000/2001,2001/2002 e 2002/2003. Os exercıcios estao organizados em quatro partes principais,que representam as partes principais da materia leccionada:

• Revisao de Algoritmos e Estruturas de DadosOs topicos cobertos incluem:

– Notacao

– Estruturas de dados elementares

– Algoritmos de procura e ordenacao

• Algoritmos para Grafos & Programacao LinearOs topicos cobertos incluem:

– Representacao de grafos

– Algoritmos elementares em grafos

– Arvores abrangentes de menor custo

– Caminhos mais curtos

– Fluxo maximo

– Fluxos de custo mınimo

– Programacao linear e algoritmo Simplex

• Sıntese de Algoritmos & Topicos AdicionaisOs topicos cobertos incluem:

– Programacao dinamica

– Algoritmos greedy

– Analise amortizada

– Emparelhamento de cadeias de caracteres

• Completude NP & Algoritmos de AproximacaoOs topicos cobertos incluem:

– Problemas NP completos

– Algoritmos de aproximacao

A organizacao em quatro partes principais, embora de alguma forma arbitraria, pretendereflectir a organizacao da disciplina ao longo dos varios anos lectivos, e agregar partesrelacionadas da materia.

Alem dos problemas estarem agregados em quatro partes principais, em cada parteos problemas estao organizados por grau de dificuldade. Optou-se por classificar cadaproblema num de tres graus possıveis de complexidade:

Tipo 1 Problemas de resolucao simples, que exigem apenas a aplicacao dos conceitosleccionados.

Tipo 2 Problemas de media dificuldade, que requerem normalmente conhecimentos apro-fundados dos topicos.

Tipo 3 Problemas de dificuldade elevada, que requerem conhecimentos aprofundados dostopicos, e normalmente alguma criatividade.

Relativamente as solucoes dos problemas propostos, para os problemas de escolhamultipla apresenta-se normalmente apenas a resposta pretendida e em alguns casos al-guns comentarios adicionais. Para os restantes problemas apresenta-se normalmenteum esboco da solucao pretendida, transmitindo as ideias principais e omitindo os de-talhes. Existe um conjunto reduzido de problemas adaptado do livro da disciplina [?]

DEI/IST J. Marques Silva 06/2003

Page 6: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 2

(CLRS), para os quais nao se apresenta qualquer solucao (por sugestao dos autores dolivro). O objectivo da nao inclusao de resolucoes detalhadas e motivar os alunos paratentarem efectivamente a resolucao dos problemas. No entanto, numa futura versaodeste documento anteve-se a inclusao de respostas detalhadas para todos os problemas,com o intuito de servirem de apoio ao corpo docente da disciplina.

Agradecimentos

Quero agradecer a contribuicao dos docentes que ao longo dos anos lectivos de 2000/2001,2001/2002 e 2002/2003 deram apoio na leccionacao da disciplina de Analise e Sıntesede Algoritmos: Francisco Moreira Couto (em 2000/2001), Luıs Guerra e Silva (em2001/2002) e Vasco Miguel Manquinho (em 2002/2003). Esta contribuicao reflecte-sena sugestao de alguns dos problemas, bem como na revisao dos enunciados.

DEI/IST J. Marques Silva 06/2003

Page 7: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 3

Parte I.

Revisao de Algoritmos e Estruturas de Dados

DEI/IST J. Marques Silva 06/2003

Page 8: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 4

Problemas do Tipo 1

DEI/IST J. Marques Silva 06/2003

Page 9: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 5

I.1.1 Considere o seguinte vector de numeros inteiros:

〈8, 14, 7, 16, 10, 6, 5, 12, 11, 15, 9〉

No algoritmo HeapSort, durante a execucao da funcao BuildHeap, indique qual o numerode vezes que a funcao Heapify (ou SiftDown) e invocada.

a. 2

b. 3

c. 4

d. 5

e. 6

f. 7

g. 8

h. 9

i. 0

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 10: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 6

I.1.2 Na execucao do algoritmo BuildHeap indique qual o numero mınimo de execucoesda operacao SiftDown que sao necessarias para transformar a tabela:

〈10, 15, 11, 8, 3, 13, 12, 6, 1, 9, 2, 7, 5, 4〉

num amontoado.

a. 2

b. 1

c. 4

d. 3

e. 6

f. 7

g. 5

h. 9

i. 8

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 11: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 7

Problemas do Tipo 3

DEI/IST J. Marques Silva 06/2003

Page 12: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 8

I.3.1 Considere uma matriz A, com dimensao (n×n), em que cada entrada aij apenaspode tomar o valor 0 ou o valor 1, aij ∈ 0, 1. Admita que as linhas e as colunas saomonotonicamente crescentes, aij ≤ aik, 1 ≤ j ≤ k ≤ n e aij ≤ akj , 1 ≤ i ≤ k ≤ n.Proponha um algoritmo eficiente para contar o numero de 0’s na matriz A, e analisea sua complexidade. Indique tambem o menor e o maior numero de comparacoes devalores que o algoritmo pode realizar.

Solucao: Uma solucao possıvel e numa primeira fase comecar com a posicao (n, 1). Seo valor for 0, deslocar para a coluna 2 (e somar n ao total de 0’s). Se o valor for 1,deslocar para a linha n − 1. O objectivo desta primeira fase e encontrar a separacaoentre 0’s e 1’s. Numa segunda fase, o objectivo e deslocar a analise ate a primeira linhaou ate a ultima coluna, contando a cada passo o numero de 0’s por coluna. Claramente,o tempo de execucao do algoritmo e O(n) (apenas O(n) posicoes analisadas, cada umaem tempo constante). O menor numero de comparacoes e n (toda a matriz so com 0’sou so com 1’s), e o maior e 2n.

DEI/IST J. Marques Silva 06/2003

Page 13: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 9

Parte II.

Algoritmos para Grafos & Programacao Linear

DEI/IST J. Marques Silva 06/2003

Page 14: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 10

Problemas do Tipo 1

DEI/IST J. Marques Silva 06/2003

Page 15: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 11

II.1.1 Considere o grafo da figura seguinte. Admita que a DFS analisa os vertices porordem lexicografica. Apos a execucao da DFS, indique o valor da expressao:

d[d] + d[e] − f [c]

b c

a

d e

a. 3

b. 4

c. 5

d. 6

e. 7

f. 8

g. 9

h. 10

i. 11

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 16: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 12

II.1.2 Na execucao do algoritmo de Prim, seja κ[u] o valor da estimativa key[u] quandoo vertice u e incluıdo na MST, e seja σ[u] a ordem pela qual o vertice u e incluıdo naMST (σ[a] = 1). Para o grafo da figura considere que o algoritmo e executado tendo overtice a como vertice raız. Nestas condicoes, indique qual o valor da expressao:

σ[d] + σ[f ] + σ[b] − (κ[d] + κ[f ] + κ[b])

b e g

a d i

c f h

7

5

3 4

1

3

2

2

3 4

5 13

6

8

a. 8

b. 9

c. 10

d. 11

e. 12

f. 4

g. 5

h. 6

i. 7

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 17: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 13

II.1.3 Na execucao do algoritmo de Dijkstra, seja δ(s, u), o peso do caminho maiscurto de s para u. Seja d[u] = δ(s, u) o peso da estimativa do caminho mais curto de spara u quando o vertice u e extraıdo da fila de vertices, e seja σ[u] a ordem pela qual overtice u e extraıdo da fila de vertices (com σ[s] = 1). Para o grafo da figura, considerea ≡ s e indique o valor da expressao:

σ[c] + σ[e] − (d[b] + d[e])

b d

a e

c

1

23

4

4

2

1

a. 1

b. 2

c. 3

d. 4

e. 5

f. 6

g. 7

h. 8

i. 9

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 18: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 14

II.1.4 Considere a aplicacao do algoritmo de Floyd-Warshall. Para o grafo da figuraseguinte, calcule o valor da expressao:

d(0)12 + d

(4)12 + d

(5)16

2 3

1 6

4 5

10

5

9

9

2

4

3

678

a. 4

b. 9

c. 14

d. 19

e. 24

f. 29

g. 34

h. 39

i. 44

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 19: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 15

II.1.5 Considere o processo de repesagem dos arcos no algoritmo de Johnson. Para ografo da figura seguinte, calcule o valor da expressao:

(u,v)∈E

w(u, v)

b c

a f

d e

5

-3

2

45

2

3

-2

-6

a. 6

b. 11

c. 16

d. 21

e. 26

f. 31

g. 36

h. 41

i. 46

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 20: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 16

II.1.6 Considere a aplicacao do algoritmo de Edmonds-Karp. Admita que c(k)f (u, v) e a

capacidade residual entre os vertices u e v apos k passos do algoritmo. Nestas condicoes,para o grafo da figura determine o valor da expressao seguinte:

c(1)f (b, c) + c

(2)f (b, c) + c

(3)f (b, c)

b c

a f

d e

5

10

9

2

4

9

36

6

6

a. 7

b. 12

c. 17

d. 22

e. 27

f. 32

g. 37

h. 42

i. 47

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 21: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 17

II.1.7 Considere o seguinte grafo dirigido:

b c

a

d e

Relativamente a este grafo, considere a aplicacao da BFS, tendo a como verticefonte. Nestas condicoes, apos a aplicacao da BFS, indique o valor da expressao:

d[c] + d[e] + 2 × d[d] − d[b]

a. 7

b. 5

c. 2

d. 9

e. 6

f. 1

g. 3

h. 8

i. 4

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 22: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 18

II.1.8 Considere o seguinte grafo nao dirigido.

b d g

a e i

c f h

2

3

5

4

2

3

1

3

4

4

3

1

2

2

5

3

Qual o custo de uma MST ?

a. 12

b. 22

c. 24

d. 18

e. 17

f. 19

g. 14

h. 13

i. 23

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 23: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 19

II.1.9 Para o grafo da figura, no calculo dos caminhos mais curtos a partir do vertice1, quantas vezes e que o algoritmo de Dijkstra actualiza as chaves dos vertices, apos ainicializacao?

2 4

1

3 5

4

6

2

1

4

2

3

5

a. 3

b. 4

c. 5

d. 6

e. 7

f. 8

g. 9

h. 10

i. 11

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 24: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 20

II.1.10 Considere o seguinte grafo dirigido:

b c

a

d e

Relativamente a este grafo, indique o numero total de arcos no fecho transitivoG = (V,E∗).

a. 10

b. 11

c. 12

d. 13

e. 14

f. 15

g. 16

h. 17

i. 18

Solucao: A resposta certa e a g.

DEI/IST J. Marques Silva 06/2003

Page 25: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 21

II.1.11 Considere a rede de fluxo representada, com fonte em a e destino em f .

b c

a f

d e

5

10

10

9

6

2

6 3

Indique o par de valores que representa, respectivamente, o numero de caminhos deaumento que e necessario considerar na execucao do algoritmo de Edmonds-Karp, e ovalor do fluxo maximo.

a. 〈1, 10〉

b. 〈2, 10〉

c. 〈3, 10〉

d. 〈4, 10〉

e. 〈1, 11〉

f. 〈2, 11〉

g. 〈3, 11〉

h. 〈4, 11〉

i. 〈5, 11〉

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 26: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 22

II.1.12 Relativamente ao grafo seguinte, considere a aplicacao do algoritmo de pre-fluxo generico, e indique qual das afirmacoes esta correcta.

b h=1,e=0

a h=5,e=0 c h=0,e=0

d h=1,e=1

2/2

2/2

1/2

2/2

1/1

a. Podemos aplicar uma operacao de Relabel ao vertice a.

b. Podemos aplicar uma operacao de Relabel ao vertice b.

c. Podemos aplicar uma operacao de Relabel ao vertice c.

d. Podemos aplicar uma operacao de Relabel ao vertice d.

e. Podemos aplicar uma operacao de Push de a para b.

f. Podemos aplicar uma operacao de Push de a para d.

g. Podemos aplicar uma operacao de Push de b para c.

h. Podemos aplicar uma operacao de Push de b para d.

i. Nao se pode executar qualquer operacao de Push ou Relabel.

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 27: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 23

II.1.13 Considere o grafo nao dirigido da figura seguinte.

3

3

3 1

1

1

4

4

4 4

4 2

2

2

Indique qual o custo de uma MST ?

a. 23

b. 24

c. 20

d. 19

e. 17

f. 21

g. 22

h. 18

i. 25

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 28: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 24

II.1.14 Considere o seguinte grafo dirigido.

r u x

s v y

t w z

Apos a aplicacao da BFS (a partir do vertice s), indique o valor da expressao seguinte(considere d[s] = 0):

d[t] + d[v] + d[x] + d[y] + d[z]

a. 12

b. 7

c. 14

d. 10

e. 8

f. 11

g. 13

h. 9

i. 6

Solucao: A resposta certa e a h.

DEI/IST J. Marques Silva 06/2003

Page 29: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 25

II.1.15 Considere a rede de fluxo seguinte.

b c

a f

d e

3

10

4

9

8

3

3

5 6

4

Apos a execucao do algoritmo de Edmonds-Karp, indique qual o par de valores 〈f, n〉obtido, os quais representam, respectivamente, o valor do fluxo maximo e o numero decaminhos de aumento.

a. 〈10, 4〉

b. 〈11, 3〉

c. 〈12, 4〉

d. 〈10, 5〉

e. 〈12, 5〉

f. 〈11, 4〉

g. 〈12, 3〉

h. 〈10, 3〉

i. 〈11, 5〉

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 30: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 26

II.1.16 Para o grafo da figura seguinte, e apos a identificacao dos caminhos mais curtoscom fonte s, indique qual o resultado da expressao:

δ(s, a) + δ(s, d) + δ(s, e)

a c

s d e

b

4

2

2

1

1

2

2

32

3

a. 16

b. 10

c. 15

d. 14

e. 12

f. 17

g. 13

h. 18

i. 11

Solucao: A resposta certa e b.

DEI/IST J. Marques Silva 06/2003

Page 31: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 27

II.1.17 Considere o grafo da figura seguinte. Relativamente a execucao do algoritmode Floyd-Warshall qual dos conjuntos de valores seguintes esta correcto?

2 4

1

3 5

1

4

2

4

11

4

a. D(0)2,4 = ∞, Π

(0)2,4 = NIL, D

(3)2,5 = 4, Π

(3)2,5 = 4

b. D(0)2,4 = ∞, Π

(0)2,4 = NIL, D

(3)2,5 = ∞, Π

(3)2,5 = NIL

c. D(0)2,4 = 4, Π

(0)2,4 = 3, D

(3)2,5 = 4, Π

(3)2,5 = 4

d. D(0)2,4 = 4, Π

(0)2,4 = 2, D

(3)2,5 = 5, Π

(3)2,5 = 4

e. D(0)2,4 = ∞, Π

(0)2,4 = NIL, D

(3)2,5 = 6, Π

(3)2,5 = 3

f. D(0)2,4 = 4, Π

(0)2,4 = 2 D

(3)2,5 = 4, Π

(3)2,5 = 4

g. D(0)2,4 = 4, Π

(0)2,4 = 2, D

(3)2,5 = 5, Π

(3)2,5 = 2

h. D(0)2,4 = 4, Π

(0)2,4 = 3, D

(3)2,5 = 6, Π

(3)2,5 = 3

i. D(0)2,4 = 4, Π

(0)2,4 = 2, D

(3)2,5 = 6, Π

(3)2,5 = 3

Solucao: A resposta certa e a i.

DEI/IST J. Marques Silva 06/2003

Page 32: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 28

II.1.18 Considere o grafo da figura:

a b c

d e f

Pretende-se executar uma DFS que maximize o valor da expressao:

f [a] + d[d] + f [b]

Indique qual das ordens seguintes, para considerar os vertices na execucao da operacaoDFS-visit, permite obter o maior valor da expressao anterior:

a. 〈a, d, b, e, c, f〉

b. 〈c, d, f, e, b, a〉

c. 〈d, a, e, b, f, c〉

d. 〈c, f, b, e, a, d〉

e. 〈f, c, e, b, d, a〉

f. 〈c, e, f, b, a, d〉

g. 〈f, e, b, d, c, a〉

h. 〈c, e, b, f, d, a〉

i. 〈e, f, d, c, b, a〉

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 33: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 29

II.1.19 Considere o grafo dirigido da figura:

a b

s t

c d

-1

-2

1

-21

3

12

1

Apos o calculo dos caminhos mais curtos a partir de s, indique qual o valor daexpressao:

δ(s, c) + δ(s, b) + δ(s, t)

a. -6

b. -5

c. -1

d. 1

e. -3

f. -7

g. 0

h. -2

i. -4

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 34: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 30

II.1.20 Considere o grafo dirigido da figura:

a b

u v

c d

-2

-2

-1

-1

-1

-1

-1

3

1

Indique qual o valor do peso do arco (b, v) apos a repesagem realizada pelo algoritmode Johnson.

a. 3

b. 1

c. 5

d. -2

e. 0

f. 4

g. -1

h. 2

i. 6

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 35: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 31

II.1.21 Considere o grafo nao dirigido da figura:

r s u v

w x z

2

16

5

45

4

35

Na execucao do algoritmo de Prim (tendo como raız o vertice r) indique qual asequencia de vertices analizados.

a. 〈r, s, w, z, x, u, v〉

b. 〈r, w, x, s, z, v, u〉

c. 〈r, w, s, x, u, z, v〉

d. 〈r, w, z, u, v, x, s〉

e. 〈r, w, s, u, x, v, z〉

f. 〈r, w, u, z, x, s, v〉

g. 〈r, s, x, w, v, z, u〉

h. 〈r, w, x, z, u, v, s〉

i. 〈r, s, w, x, z, v, u〉

Solucao: A resposta certa e c.

DEI/IST J. Marques Silva 06/2003

Page 36: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 32

II.1.22 Para o grafo seguinte, indique qual o valor da MST?

r v

s t

u

3

43

5

4

4

22

a. 5

b. 6

c. 7

d. 8

e. 9

f. 10

g. 11

h. 12

i. 13

Solucao: A resposta certa e a g.

DEI/IST J. Marques Silva 06/2003

Page 37: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 33

II.1.23 Para o grafo seguinte, e apos o passo de repesagem do algoritmo de Johnson,indique o valor da expressao:

w(a, c) + w(b, d) + w(c, e)

b d

a e

c

1

12

-3

-2

2

-1

a. 1

b. 2

c. 3

d. 4

e. 5

f. 6

g. 7

h. 8

i. 9

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 38: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 34

II.1.24 Considere o grafo da figura seguinte.

v1 v3

s t

v2

30

3010

10

5

30

10

Seja c(i)f (u, v) a capacidade residual do arco (u, v) apos a iteracao i do algoritmo de

Edmonds-Karp. Nesta situacao calcule o valor da expressao:

c(1)f (v2, t) + c

(2)f (s, v1) + c

(3)f (s, v1)

a. 50

b. 45

c. 40

d. 35

e. 30

f. 25

g. 20

h. 15

i. 10

Solucao: A resposta certa e a.

DEI/IST J. Marques Silva 06/2003

Page 39: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 35

II.1.25 Para o grafo seguinte, qual o valor de w(b, d) apos a aplicacao do Algoritmode Johnson.

b d

a e

c

-1

12

-3

-2

2

-2

a. -4

b. -3

c. -2

d. -1

e. 0

f. 1

g. 2

h. 3

i. 4

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 40: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 36

II.1.26 Considere o grafo seguinte. Quais dos valores estao correctos para o algoritmode Floyd-Warshall?

2

1 3

4

1

3

4

-2

1

4

a. D(0)3,2 = ∞,Π

(0)3,2 = NIL,D

(3)3,2 = 2, Π

(3)3,2 = 4

b. D(0)3,2 = ∞,Π

(0)3,2 = NIL,D

(3)3,2 = 2, Π

(3)3,2 = 1

c. D(0)3,2 = ∞,Π

(0)3,2 = NIL,D

(4)3,2 = 2, Π

(4)3,2 = 4

d. D(0)3,2 = ∞,Π

(0)3,2 = NIL,D

(4)3,2 = 2, Π

(4)3,2 = 1

e. D(0)3,2 = 1,Π

(0)3,2 = 3,D

(3)3,2 = 1, Π

(4)3,2 = 3

f. D(0)3,2 = 1,Π

(0)3,2 = 3,D

(3)3,2 = ∞, Π

(3)3,2 = NIL

g. D(0)3,2 = ∞,Π

(0)3,2 = NIL,D

(4)3,2 = 1, Π

(3)3,2 = 3

h. D(0)3,2 = ∞,Π

(0)3,2 = NIL,D

(4)3,2 = ∞, Π

(4)3,2 = NIL

i. D(0)1,3 = ∞,Π

(0)1,3 = NIL,D

(4)1,3 = ∞, Π

(4)1,3 = NIL

Solucao: A resposta certa e d.

DEI/IST J. Marques Silva 06/2003

Page 41: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 37

II.1.27 Considere o grafo nao dirigido representado na figura, no qual os pesos dos arcosa, b, c, d, e e f sao desconhecidos e formam o tuplo P =< 2, 3, 4, 5, 6, 6 >. Identifiqueuma permutacao de P que associada a < a, b, c, d, e, f > permita obter um grafo como maior numero possıvel de arvores abrangentes de menor custo (MSTs). Qual e essenumero ?

f

a

b

c

d

e

6

12

3

45

a. 1

b. 3

c. 5

d. 7

e. 2

f. 4

g. 6

h. 8

i. Superior a 8

Solucao: A resposta certa e a i.

DEI/IST J. Marques Silva 06/2003

Page 42: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 38

II.1.28 Considere um grafo dirigido G = (V,E), cuja matriz de pesos e dada por:

W =

0 3 8 ∞ −4∞ 0 ∞ 1 7∞ 4 0 ∞ ∞2 ∞ −5 0 ∞∞ ∞ ∞ 6 0

Considere as matrizes D(k) resultantes de cada iteracao do algoritmo de Floyd-Warshall. Qual das seguintes hipoteses e verdadeira:

a. D(1)4,5 = ∞, D

(2)3,4 = ∞, D

(4)2,4 = ∞

b. D(1)4,5 = −3, D

(2)3,4 = 2, D

(4)2,4 = 1

c. D(1)4,5 = −1, D

(2)3,4 = 1, D

(4)2,4 = ∞

d. D(1)4,5 = −2, D

(2)3,4 = 2, D

(4)2,4 = 1

e. D(1)4,5 = −2, D

(2)3,4 = 5, D

(4)2,4 = 1

f. D(1)4,5 = −1, D

(2)3,4 = 3, D

(4)2,4 = 2

g. D(1)4,5 = ∞, D

(2)3,4 = 3, D

(4)2,4 = 2

h. D(1)4,5 = −3, D

(2)3,4 = 5, D

(4)2,4 = 1

i. Nenhuma das anteriores

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 43: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 39

II.1.29 Considere a rede de fluxo representada no grafo da figura.

v1 v3

s t

v2 v4

16

12

20

8

8

9

6

10 7

Assumindo que c(k)f (u, v) e a capacidade residual entre o vertice u e o vertice v apos

k iteracoes do algoritmo de Edmonds-Karp, indique o valor da seguinte expressao:

c(1)f (v3, v1)/2+c

(1)f (v4, v2)+c

(2)f (v3, v1)+c

(2)f (v4, v2)−c

(3)f (v2, v1)−c

(3)f (v3, t)+c

(3)f (s, v1)

a. 10

b. 7

c. 20

d. 22

e. 16

f. 26

g. 15

h. 2

i. Nenhuma das anteriores

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 44: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 40

II.1.30 Considere o grafo nao dirigido da figura.

7

5

3 4

1

3

2

2

3 4

5 13

6

8

Qual o custo de uma MST ?

a. 20

b. 21

c. 22

d. 23

e. 24

f. 25

g. 26

h. 27

i. 28

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 45: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 41

II.1.31 Considere o grafo dirigido apresentado.

u v w

x y z

Sejam d e f os tempos de descoberta e finalizacao de um algoritmo de procura emprofundidade (DFS) com origem em u e que percorre os vertices por ordem lexicografica.Indique o valor da seguinte expressao:

d(u) + f(v) + d(w) + f(x) + d(y) + f(z)

a. 24

b. 26

c. 28

d. 30

e. 32

f. 34

g. 36

h. 38

i. 40

Solucao: A resposta certa e a g.

DEI/IST J. Marques Silva 06/2003

Page 46: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 42

II.1.32 Considere o grafo dirigido e pesado apresentado.

b c

a

d e

6

5

2 1

1

2

3

-2

Considerando que δ(u, v) e o peso do caminho de menor peso de u para v, determineo valor da seguinte expressao:

δ(a, b) + δ(a, c) − δ(a, e) − δ(a, d)

a. -4

b. -3

c. -2

d. -1

e. 0

f. 1

g. 2

h. 3

i. 4

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 47: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 43

II.1.33 Considere a rede de fluxo representada, com fonte em a e destino em f .

b c

a f

d e

5

10

9

4

2

9

3 6

Sabendo que c(k)f (u, v) e a capacidade residual entre os vertices u e v apos k passos

do algoritmo de Edmonds-Karp, determine o valor da seguinte expressao:

c(1)f (b, a)/2 + c

(1)f (d, a) + c

(2)f (b, c) + c

(3)f (e, c) + c

(4)f (e, f)

a. 10

b. 11

c. 12

d. 13

e. 14

f. 15

g. 16

h. 17

i. 18

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 48: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 44

II.1.34 Considere o seguinte grafo nao dirigido.

2

4 3

3 22

2

3

1

7

2

3 3

2

8

6

3

Qual o custo de uma MST ?

a. 21

b. 17

c. 12

d. 24

e. 32

f. 10

g. 19

h. 22

i. 13

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 49: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 45

II.1.35 Considere o seguinte grafo dirigido.

u v w t

x y z r

Sejam d e f os tempos de descoberta e finalizacao de um algoritmo de procura emprofundidade (DFS) com origem em r, indique o valor da seguinte expressao:

d(u) + f(v) + d(w) + f(x) + d(y) + f(z) + d(t) + f(r)

a. 69

b. 71

c. 62

d. 53

e. 24

f. 45

g. 47

h. 49

i. 33

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 50: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 46

II.1.36 Considere o seguinte grafo dirigido e pesado.

b

a c

d

6

-3

-2

-2

2

-1

Aplicando o Algoritmo de Johnson, indique o valor da seguinte expressao:

w(a, b) + w(b, c) + w(c, a) + w(b, d) + w(d, c) + w(d, a)

a. 15

b. 17

c. 1

d. 3

e. 9

f. 11

g. 13

h. 5

i. 7

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 51: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 47

II.1.37 Considere a rede de fluxo representada.

b c

a f

d e

5

10

9

4

2

9

3 6

Sabendo que c(k)f (u, v) e a capacidade residual entre os vertices u e v apos k passos de

uma implementacao do Algoritmo de Ford-Fulkerson onde em cada passo e seleccionadoo caminho mais longo, determine o valor da seguinte expressao:

c(1)f (b, a) + c

(1)f (d, a) + c

(2)f (b, c) + c

(3)f (e, c) + c

(4)f (e, f)

a. 14

b. 17

c. 18

d. 10

e. 13

f. 15

g. 16

h. 11

i. 12

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 52: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 48

II.1.38 Considere o corte (a,b,c,d) do grafo apresentado, e para esse corte digaqual das afirmacoes esta correcta:

b

a c

d

1

5

2

3

44

a. o arco leve tem peso 3

b. o arco com peso 3 nao e leve mas e seguro

c. existem dois arcos leves

d. nenhum arco e leve

e. Nenhuma das respostas anteriores

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 53: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 49

II.1.39 Para o grafo da figura seguinte indique quantas MST’s se podem obter (paraqualquer um dos metodos estudados).

b

a c

d

1

5

2

3

44

a. 3

b. 2

c. 1

d. 0

e. Nenhuma das respostas anteriores

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 54: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 50

II.1.40 Para o grafo da figura seguinte, e para qualquer MST, que vertices ficam ligadosdirectamente a todos os nos?

b

a c

d

1

5

2

3

44

a. a

b. a, b

c. b

d. b, c

e. Nenhuma das respostas anteriores

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 55: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 51

II.1.41 Considere o grafo apresentado com o vertice a como raiz. Qual dos seguintesarcos pertence a SPT (Shortest Path Tree)?

b

a c

d

1

1

2

5

4

4

a. b→d

b. b→c

c. a→d

d. c→d

e. Nenhuma das respostas anteriores

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 56: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 52

II.1.42 Considere o grafo apresentado com o vertice a como raiz. Qual a complexidadede aplicar o algoritmo, estudado para este tipo de grafos, por forma a encontrar a SPT?

b

a c

d

1

1

2

5

-42

a. O(E log(E))

b. O(E log(V ))

c. O(V 2)

d. O(V 3)

e. Nenhuma das respostas anteriores

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 57: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 53

II.1.43 Considere o grafo da figura seguinte. Quantos arcos contem o fecho transitivodo grafo?

b

a c

d

a. 5

b. 6

c. 7

d. 8

e. Nenhuma das respostas anteriores

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 58: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 54

II.1.44 Considere o grafo apresentado. Quais dos valores estao correctos para o algo-ritmo de Floyd-Warshall?

2

1 3

4

2

2

5

1

1

4

a. D(0)2,4 = 4, Π

(0)2,4 = 2, D

(4)2,4 = 3, Π

(4)2,4 = 2

b. D(0)2,4 = ∞, Π

(0)2,4 = ∞, D

(4)2,4 = 4, Π

(4)2,4 = 3

c. D(0)2,4 = ∞, Π

(0)2,4 = ∞, D

(4)2,4 = 3, Π

(4)2,4 = 2

d. D(0)2,4 = 4, Π

(0)2,4 = 2, D

(4)2,4 = 3, Π

(4)2,4 = 3

e. Nenhuma das respostas anteriores

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 59: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 55

II.1.45 Para o grafo seguinte calcule o valor do fluxo maximo.

v1

s t

v2

20

2010

10

5

a. 15

b. 20

c. 25

d. 30

e. Nenhuma das respostas anteriores

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 60: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 56

II.1.46 Em relacao ao grafo da figura, indique qual das afirmacoes seguintes estacorrecta.

b

a c

d

a. O grafo nao e bipartido.

b. O grafo e bipartido mas o conjunto L de vertices e vazio.

c. O grafo e bipartido mas o conjunto R de vertices e vazio.

d. O grafo e bipartido e L = a, b e R = c, d.

e. O grafo e bipartido e L = a, c e R = b, d.

f. O grafo e bipartido e L = a, d e R = b, c.

g. O grafo e bipartido e L = a e R = b, c, d.

h. O grafo e bipartido e L = b e R = a, c, d.

i. O grafo e bipartido e L = c e R = a, b, d.

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 61: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 57

II.1.47 Qual o valor do maximum bipartite macthing para o grafo da figura seguinte?

b

a c

d

a. um

b. dois

c. tres

d. quatro

e. cinco

f. seis

g. sete

h. oito

i. nove

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 62: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 58

II.1.48 Qual das seguintes afirmacoes esta correcta, em relacao ao seguinte grafo,considerando o algoritmo de preflow-push generico.

b h=1,e=0

a h=5,e=0 c h=0,e=0

d h=0,e=3

2/2

2/2

1/2

0/2

1/1

a. Podemos executar um relabel ao vertice a.

b. Podemos executar um relabel ao vertice b.

c. Podemos executar um relabel ao vertice c.

d. Podemos executar um relabel ao vertice d.

e. Podemos executar um push na seta de a para b.

f. Podemos executar um push na seta de a para d.

g. Podemos executar um push na seta de b para c.

h. Podemos executar um push na seta de b para d.

i. Nao se pode executar nenhuma operacao.

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 63: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 59

II.1.49 Considere o grafo da figura seguinte:

b

a c

d

2

2

-1

2

2

-2

Apos a aplicacao do algoritmo de Johnson obtemos:

a. w(d, c) = 1

b. w(d, c) = 2

c. w(d, c) = 3

d. w(d, c) = 4

e. w(d, c) = −4

f. w(d, c) = −3

g. w(d, c) = −2

h. w(d, c) = −1

i. w(d, c) = 0

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 64: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 60

II.1.50 Considere o grafo da figura seguinte.

2

1 3

4

2

2

1

1

5

2

Na aplicacao do algoritmo de Floyd-Warshall a este grafo, quais dos valores seguintesestao correctos?

a. D(0)2,3 = 4, Π

(0)2,3 = 1, D

(4)2,3 = 4, Π

(4)2,3 = 1

b. D(0)2,3 = 5, Π

(0)2,3 = 2, D

(4)2,3 = 5, Π

(4)2,3 = 2

c. D(0)2,3 = ∞, Π

(0)2,3 = ∞, D

(4)2,3 = 5, Π

(4)2,3 = 2

d. D(0)2,3 = ∞, Π

(0)2,3 = ∞, D

(4)2,3 = 4, Π

(4)2,3 = 1

e. D(0)2,3 = 4, Π

(0)2,3 = 1 D

(4)2,3 = 5, Π

(4)2,3 = 2

f. D(0)2,3 = 5, Π

(0)2,3 = 2, D

(4)2,3 = 4, Π

(4)2,3 = 1

g. D(0)2,3 = ∞, Π

(0)2,3 = 1, D

(4)2,3 = 5, Π

(4)2,3 = 2

h. D(0)2,3 = 4, Π

(0)2,3 = ∞, D

(4)2,3 = 5, Π

(4)2,3 = 2

i. D(0)2,3 = ∞, Π

(0)2,3 = ∞, D

(4)2,3 = ∞, Π

(4)2,3 = ∞

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 65: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 61

II.1.51 Indique qual o valor do fluxo maximo para o grafo seguinte.

v1

s t

v2

6

63

3

2

a. 1

b. 2

c. 3

d. 4

e. 5

f. 6

g. 7

h. 8

i. 9

Solucao: A resposta certa e h.

DEI/IST J. Marques Silva 06/2003

Page 66: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 62

II.1.52 Para o grafo da figura seguinte, quantas MST distintas e possıvel obter?

v2

v1 v4

v3

1

1

2

1

1

2

a. uma

b. duas

c. tres

d. quatro

e. cinco

f. seis

g. sete

h. oito

i. nove

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 67: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 63

II.1.53 Qual das seguintes sequencias e uma ordenacao topologica para o grafo seguin-te?

v2

v1 v4

v3

a. v1,v2,v3,v4

b. v1,v2,v4,v3

c. v1,v4,v2,v3

d. v2,v1,v4,v3

e. v2,v1,v3,v4

f. v4,v1,v3,v2

g. v2,v4,v3,v1

h. v2,v4,v1,v3

i. v3,v1,v2,v4

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 68: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 64

II.1.54 Para a rede de fluxos seguinte diga qual o caminho de aumento mais atractivono grafo residual respectivo, i.e. o que causa o maior aumento do fluxo entre as duasextremidades.

v1

s t

v2

2/3

2/3

0/1

0/3

0/3

2/2

a. s → t

b. s → v1 → t

c. s → v2 → t

d. s → v1 → v2 → t

e. s → v2 → v1 → t

f. s → v1 → s → t

g. s → t → v2 → t

h. s → v1 → v2 → v1 → t

i. t → v1 → v2 → s

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 69: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 65

II.1.55 Para o grafo seguinte, qual o valor de w(c, d) apos a aplicacao do Algoritmode Johnson.

b d

a e

c

1

12

-3

-2

2

-1

a. -4

b. -3

c. -2

d. -1

e. 0

f. 1

g. 2

h. 3

i. 4

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 70: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 66

II.1.56 Para o grafo seguinte, calcule o valor do fluxo maximo.

v1 v3

s t

v2

30

30

10

10

5

30

5

a. 50

b. 45

c. 40

d. 35

e. 30

f. 25

g. 20

h. 15

i. 10

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 71: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 67

II.1.57 Para o grafo seguinte, indique qual o numero de MSTs.

r v

s t

u

3

43

5

4

4

22

a. 10

b. 9

c. 8

d. 7

e. 6

f. 5

g. 4

h. 3

i. 2

Solucao: A resposta certa e a g.

DEI/IST J. Marques Silva 06/2003

Page 72: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 68

II.1.58 Calcule a solucao do programa linear seguinte.

max x1 − 2x2 + x3

s.a. x1 + 2x2 + x3 ≤ 122x1 + x2 − x3 ≤ 6−x1 + 3x2 ≤ 9x1, x2, x3 ≥ 0

a. 10

b. 12

c. 14

d. 16

e. 18

f. 20

g. 8

h. 6

i. 4

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 73: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 69

II.1.59 Calcule a solucao do programa linear seguinte.

max −x1 + 2x2

s.a. 3x1 + 4x2 = 122x1 − x2 ≤ 12x1, x2 ≥ 0

a. 2

b. 4

c. 6

d. 8

f. 10

e. -2

g. 0

h. 7

i. 3

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 74: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 70

Problemas do Tipo 2

DEI/IST J. Marques Silva 06/2003

Page 75: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 71

II.2.1 Considere os algoritmos de fluxo maximo baseados em preflow-push. Admita umgrafo G = (V,E), com V = s ≡ x0, x1, x2, x3, x4 ≡ t e E = (s, x1), (x1, x2), (x2, x3), (x3, t).Admita tambem que c(s, x1) = 10, c(x1, x2) = 10, c(x2, x3) = 5, c(x3, t) = 10. Nestasituacao qual o maior numero de operacoes de Relabel que e possıvel obter (sem contarcom a inicializacao de s)?

a. 6

b. 7

c. 8

d. 9

e. 10

f. 11

g. 12

h. 13

i. 14

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 76: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 72

II.2.2 Considere uma DAG G = (V,E), N = |V |. Seja v ∈ V um vertice de G, e sejamtm(v) e tM (v) respectivamente o menor e o maior indıce de v para todas as ordenacoestopologicas de G, com 1 ≤ tm(v) ≤ tM (v) ≤ N . Nestas condicoes indique para o verticev qual o menor tempo de fim (f [v]) que e possıvel obter para qualquer DFS realizadasobre G.

a. 2 tM (v) + 2

b. 2 tm(v) + 2

c. 2 (N − tM (v)) + 2

d. 2 (N − tm(v)) + 2

e. tm(v) + tM (v)

f. 2(tm(v) + tM (v)) + 2

g. (tM (v)+tm(v))2

h. N + (tM (v)−tm(v))2

i. N − (tm(v) + tM (v)) + 2

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 77: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 73

II.2.3 Relativamente a execucao do algoritmo DFS num grafo G = (V,E), ligado, naodirigido, com n vertices, indique qual das frases seguintes esta incorrecta.

a. O numero de tempos de descoberta e de fim distintos e 2n.

b. A floresta de DFS tem apenas uma arvore.

c. Um arco (u, v) e um arco para tras se d[u] ≥ d[v] e v tem cor cinzenta.

d. A soma do numero de arcos para a frente e de cruzamento e zero.

e. Existem vertices u e v, com (u, v) ∈ E, tal que [d[u], f [u]] ∩ [d[v], f [v]] = ∅.

f. Para qualquer vertice folha u numa floresta da arvore de DFS verifica-se f [u] =d[u] + 1

g. Para qualquer vertice interno u numa floresta da arvore de DFS nao se verificaf [u] = d[u] + 1.

h. A complexidade e O(V + E).

i. A complexidade e O(V 2 + E2).

Solucao: A resposta certa (i.e. a frase incorrecta) e a e.

DEI/IST J. Marques Silva 06/2003

Page 78: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 74

II.2.4 Indique qual das frases seguintes esta incorrecta.

a. A remocao de um arco de um grafo G = (V,E) nao implica um aumento donumero de SCCs.

b. Na execucao da DFS, o numero de tempos de inıcio e fim e 2n, em que n representao numero de vertices, tanto para grafos dirigidos como para grafos nao dirigidos.

c. Num grafo nao dirigido, a existencia de mais do que uma MST implica existenciade arcos com o mesmo peso.

d. O numero de passos de colapsagem de arvores no algoritmo de Boruvka e limitadosuperiormente em log n.

e. Existem grafos, com arcos com pesos negativos, para os quais a aplicacao doalgoritmo de Dijkstra produz o resultado correcto.

f. Apos a aplicacao do algoritmo de Bellman-Ford, e possıvel enumerar os arcos deum ciclo negativo em O(V + E).

g. Admitindo que V = O(E), e recorrendo a um amontoado binario, o algoritmo deDijkstra tem complexidade O(E log V ).

h. Se numa iteracao do algoritmo de Bellman-Ford nenhum valor d[v] e alterado,entao o algoritmo pode retornar a indicacao da inexistencia de ciclos negativos apartir do vertice fonte s.

i. Na execucao de uma DFS num DAG, nao podem existir vertices com arcos deentrada que apresentem tempos de fim superiores a vertices sem arcos de entrada.

Solucao: A resposta certa (i.e. a frase incorrecta) e a i.

DEI/IST J. Marques Silva 06/2003

Page 79: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 75

II.2.5 Considere o problema da identificacao do fecho transitivo de um grafo. Admitaum grafo G = (V,E), com vertices V = v1, v2, . . . , vn e arcos E = (vi, vi+1), i =1, . . . , n − 1. Nestas condicoes, qual a variacao no numero de arcos apos o calculo dofecho transitivo?

a. n (n − 1)/2

b. n (n − 1)/2 − 1

c. n (n − 1)

d. n (n − 1) − 1

e. n2/2 − 3n/2 + 1

f. n2/2 − n/2 − 1

g. 2n

h. 2n − 2

i. 2n + 2

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 80: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 76

II.2.6 Considere a aplicacao do algoritmo Relabel-To-Front para o calculo do fluxomaximo. Admita uma rede de fluxo G = (V,E), com vertices V = v1 ≡ s, v2, . . . , vn ≡t e arcos E = (vi, vi+1), i = 1, . . . , n − 1, cada arco com capacidade c(vi, vi+1) =n − i + 1, i = 1, . . . , n − 1. Nestas condicoes, apos a execucao do algoritmo Relabel-To-Front, qual a altura maxima para os vertices no conjunto V − s, t?

a. 2n − 2

b. 2n − 1

c. 2n

d. n − 2

f. n − 1

e. n + 1

g. n

h. 1

i. 2

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 81: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 77

II.2.7 Indique qual das frases seguintes esta incorrecta.

a. Apos a execucao do algoritmo de Floyd-Warshall, a existencia de ciclos negativospode ser determinada em O(n).

b. Na execucao do algoritmo de Bellman-Ford, se o processo de relaxacao dos arcosnao altera a estimativa do peso do caminho mais curto de qualquer vertice, entaoo algoritmo pode terminar e retornar o valor TRUE.

c. Em qualquer algoritmo de pre-fluxo a altura maxima e nao superior a 2 |V | − 1.

d. Para qualquer algoritmo de pre-fluxo com complexidade assimptotica Ω(|N |3), onumero de operacoes de Push nao saturante e Ω(|N |3).

e. Existem redes de fluxo para as quais o metodo de Ford-Fulkerson pode nao ter-minar.

f. Na execucao do metodo de Ford-Fulkerson, qualquer arco (u, v) de qualquer ca-minho de aumento p verifica (u, v) ∈ E.

g. A complexidade do algoritmo de Edmonds-Karp e O(|V |5).

h. O algoritmo de Floyd-Warshall permite identificar ciclos negativos.

i. Na execucao de algoritmos de fluxo maximo baseados em caminhos de aumento,se todas as capacidades tem valor inteiro, entao qualquer aumento de fluxo temvalor inteiro.

Solucao: A resposta certa (i.e. a frase incorrecta) e a f.

DEI/IST J. Marques Silva 06/2003

Page 82: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 78

II.2.8 Indique qual das frases seguintes esta incorrecta.

a. A complexidade assimptotica do algoritmo para o fluxo de custo mınimo baseadoem cancelamento de ciclos e O(V · E2 · U · C).

b. Dado que o problema de programacao linear e resoluvel em tempo polinomial,entao o problema de fluxo de custo mınimo tambem e resoluvel em tempo polino-mial.

c. Dado um qualquer programa linear, o algoritmo Simplex termina, e retorna asolucao correcta ou uma indicacao de que o programa linear nao e exequıvel oude que nao tem solucao limitada.

d. Sendo z a solucao do programa linear primal, e sendo w a solucao do problemalinear dual, verifica-se que z ≤ w.

e. Dado que o problema de fluxo maximo e resoluvel em tempo polinomial e dadoque o problema de fluxo maximo e redutıvel em tempo polinomial ao problema defluxo de custo mınimo, entao o problema de fluxo de custo mınimo e resoluvel emtempo polinomial.

f. A reducao de um programa linear para a forma slack tem complexidade polinomialno numero de variaveis e de restricoes do problema original.

g. No algoritmo para o fluxo de custo mınimo baseado em cancelamento de ciclosnao e possıvel utilizar o algoritmo de Dijkstra.

Solucao: A resposta certa (i.e. a frase incorrecta) e a e.

DEI/IST J. Marques Silva 06/2003

Page 83: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 79

II.2.9 Relativamente a execucao do algoritmo DFS num grafo G = (V,E), ligado,dirigido, com n vertices e m arcos, indique qual das frases seguintes esta incorrecta.

a. O valor n representa um limite superior no numero de arcos da floresta de DFS.

b. O valor n representa um limite superior no numero de arvores na floresta de DFS.

c. O valor n − 1 representa um limite superior no numero de arcos de cruzamento.

d. Podem existir vertices u, com arcos de entrada e arcos de saıda, tais que f [u] =d[u] + 1.

e. Podem existir vertices u e v, com (u, v) ∈ E, tal que [d[u], f [u]] ∩ [d[v], f [v]] = ∅.

f. Para cada vertice v, os valores possıveis para os tempos de descoberta d[v] e defim f [v] variam entre 1 e 2n.

g. A soma do numero de vertices brancos, cinzentos e pretos e constante.

h. E possıvel identificar um arco para tras (u, v) tal que [d[u], f [u]] ∩ [d[v], f [v]] 6= ∅.

i. O numero de valores distintos de d[u] na DFS e nao inferior ao numero de valoresdistintos de d[u] na BFS, executada no mesmo grafo e relativa a um qualquervertice inicial s.

Solucao: A resposta certa (i.e. a frase incorrecta) e a c.

DEI/IST J. Marques Silva 06/2003

Page 84: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 80

II.2.10 Num grafo G = (V,E), nao dirigido, ligado, o maior numero de arcos para tras(back-edges) que e possıvel obter apos a aplicacao da DFS e:

a. n

b. n(n−1)2

c. 2n − 1

d. n(n+1)2

e. (n−1)(n−2)2

f. 2n−1

n−2

g. n − 1

h. 2n−1

i. 2n

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 85: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 81

II.2.11 Indique qual das seguintes frases esta incorrecta.

a. O numero de SCCs num grafo G = (V,E), dirigido, e O(V ).

b. A complexidade de listar os elementos ligados de um grafo G = (V,E) nao dirigidoe O(V + E).

c. A complexidade para identificar SCCs num grafo G = (V,E), dirigido, e O((V +E) log V ).

d. A existencia de multiplas MSTs implica a existencia de multiplas ocorrencias depelo menos um valor de peso dos arcos.

e. Em grafos dirigidos, o numero de ordenacoes topologicas no pior caso e Ω(2V ).

f. Num grafo G = (V,E), dirigido, acıclico, a existencia de 1 unica ordenacao to-pologica 〈v1, . . . , vk〉 implica a existencia de um unico caminho entre v1 e vk emG.

g. A complexidade para identificar SCCs num grafo G = (V,E), dirigido, no piorcaso e Ω(V + E).

h. A complexidade do algoritmo de Kruskal e O((V +E) log V ), quando baseado nautilizacao de um amontoado.

i. O numero de operacoes de colapsagem de arvores no algoritmo de Boruvka eO(log V ).

Solucao: A resposta certa (i.e. a frase incorrecta) e a f.

DEI/IST J. Marques Silva 06/2003

Page 86: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 82

II.2.12 Considere a rede de fluxo da figura.

v1 v3 v5

s t

v2 v4 v6

2000

2000

2000

2

2000

Para este grafo, indique qual o maior numero de caminhos de aumento que e possıvelutilizar na aplicacao do metodo de Ford-Fulkerson.

a. 4002.

b. 4000.

c. 2001.

d. 2000.

e. 1001.

f. 1000.

g. 999.

h. 501.

i. 500.

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 87: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 83

II.2.13 Indique qual das frases seguintes esta incorrecta.

a. Para redes de fluxo em que as capacidades apresentam valores racionais, qualquerimplementacao do algoritmo de Ford-Fulkerson termina em tempo finito e calculao valor correcto.

b. Entre todas as implementacoes possıveis do metodo de Ford-Fulkerson, e paraqualquer rede de fluxo, o algoritmo de Edmonds-Karp requer o menor numero decaminhos de aumento.

c. Existem redes de fluxo para as quais algumas implementacoes do metodo de Ford-Fulkerson nao terminam.

d. A aplicacao do algoritmo de Edmonds-Karp assegura que o comprimento (nonumero de arcos) dos caminhos de aumento e monotonicamente crescente, ten-do como valores possıveis o conjunto 1, . . . , |V | − 1.

e. O numero de caminhos de aumento na execucao do algoritmos de Edmonds-Karpe O(V E).

f. Apos a execucao do algoritmo de Floyd-Warshall, a complexidade assimptoticaadicional para identificar a existencia de ciclos negativos e O(V ).

g. Na execucao do algoritmo de Bellman-Ford, a complexidade assimptotica paraidentificar a existencia de ciclos negativos e O(E).

h. Para grafos com ciclos negativos, as complexidades assimptoticas do algoritmo deJohnson e do algoritmo de Bellman-Ford sao iguais.

i. Num grafo dirigido acıclico e possıvel encontrar os caminho mais curtos entre todosos pares de vertices em O(V (V + E)).

Solucao: A resposta certa (i.e. a frase incorrecta) e a b.

DEI/IST J. Marques Silva 06/2003

Page 88: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 84

II.2.14 Indique qual a menor complexidade de um algoritmo eficiente para identificarum corte mınimo de uma rede de fluxo G = (V,E), apos a execucao de um algoritmopara calculo do fluxo maximo.

a. V .

b. E.

c. E log V .

d. E log E.

e. V E.

f. V E2.

g. V 2E.

h. 2V .

i. 2E .

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 89: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 85

II.2.15 Indique qual das frases seguintes esta incorrecta.

a. Na aplicacao do algoritmo de Edmonds-Karp, o numero de aumentos de fluxo eO(V E).

b. Para grafos onde E = O(V ), a complexidade assimptotica do algoritmo genericode pre-fluxo nao e menor do que a complexidade assimptotica do algoritmo deEdmonds-Karp.

c. A complexidade assimptotica do algoritmo Relabel-To-Front e inferior a do algo-ritmo de pre-fluxo generico porque o numero de operacoes de Push nao saturantee menor.

d. Na aplicacao do algoritmo de pre-fluxo generico a altura maxima de um verticenao excede 2|V | − 1.

e. Na aplicacao do algoritmo de pre-fluxo generico, o numero total de actualizacoesdas alturas e menor do que 2|V |2.

f. E possıvel reduzir a complexidade assimptotica do algoritmo generico de pre-fluxoatraves da reducao do numero de operacoes de Push saturante.

g. Para redes de fluxo com capacidades nao necessariamente racionais, e por escolhaadequada dos caminhos de aumento, e possıvel o algoritmo de Ford-Fukerson naoterminar, e ficar a uma distancia arbitrariamente pequena de um valor de fluxoincorrecto.

h. A complexidade assimptotica do algoritmo de Ford-Fulkerson, para o calculo doemparelhamento bipartido maximo, e menor do que a complexidade assimpoticado algoritmo de pre-fluxos generico para redes de fluxo arbitrarias.

i. A complexidade assimptotica do algoritmo de Ford-Fulkerson, para o calculo doemparelhamento bipartido maximo, e menor do que a complexidade assimpoticado algoritmo de Edmonds-Karp para redes de fluxo arbitrarias.

Solucao: A resposta certa (i.e. a frase incorrecta) e a f.

DEI/IST J. Marques Silva 06/2003

Page 90: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 86

II.2.16 Relativamente aos problemas de caminhos mais curtos em grafos, para um grafoG = (V,E), com n = |V | e m = |E|, indique qual das seguintes frases esta incorrecta.

a. Na aplicacao do algoritmo de Bellman-Ford, o numero de relaxacoes e O(nm).

b. No algoritmo de Johnson, a execucao do processo de repesagem e opcional sempreque todos os arcos tenham peso nao negativo.

c. No algoritmo de Johnson, e apos a repesagem dos arcos, podem existir arcos compeso igual a 0.

d. No calculo do fecho transitivo, o numero de arcos adicionados e O(n2).

e. No algoritmo de Johnson, um limite superior no valor absoluto da maior actuali-zacao de pesos e max(u,v)∈E|w(u, v)|.

f. Na execucao do algoritmo de Floyd-Warshall, a ordem pela qual os vertices saoconsiderados pode ser qualquer, utilizando para tal uma adequada permutacaodos vertices.

g. Apos a aplicacao do algoritmo de Floyd-Warshall, a complexidade para encontrarciclos negativos e O(n).

h. Para o problema dos caminhos mais curtos com fonte unica num DAG, o numerode relaxacoes e O(n + m).

i. E possıvel encontrar o fecho transitivo de um DAG em O(nm).

Solucao: A resposta certa (i.e. a frase incorrecta) e a f.

DEI/IST J. Marques Silva 06/2003

Page 91: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 87

II.2.17 Considere um grafo G = (V,E), dirigido, com as seguintes caracterısticas:

• O conjunto de vertices e V = s, x1, . . . , xn.

• Existe um arco de s para qualquer outro vertice de G, i.e. (s, xi) ∈ E, 1 ≤ i ≤ n .

• Existe um arco entre os vertices xi e xi+1, i.e. (xi, xi+1) ∈ E, 1 ≤ i ≤ n − 1.

Nestas condicoes, qual o numero de arvores de DFS distintas, com raız s, que epossıvel construir?

a. 2n−1

b. n2

2

c. n + 1

d. 2n

e. n

f. 2n+1 − 1

g. n(n−1)2 + 1

h. n − 1

i. n(n+1)2 − 1

Solucao: A resposta correcta e a a.

DEI/IST J. Marques Silva 06/2003

Page 92: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 88

II.2.18 Indique qual o menor limite superior na complexidade assimptotica do algorit-mo de Edmonds-Karp para redes de fluxo onde todos os arcos tem capacidade unitaria.(Admita que V = O(E).)

a. E2

b. V 2 E

c. V E

d. V E2

e. V 2

f. E log E

g. E log V

h. E

i. V 2 log V

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 93: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 89

II.2.19 Considere uma rede de fluxo G = (V,E), com vertice fonte s e vertice destinot, e com a seguinte organizacao:

• Os vertices estao organizados por nıveis.

• O vertice s esta colocado no nıvel 0.

• O vertice t esta colocado no nıvel j + 1.

• Em cada nıvel i, 1 ≤ i ≤ j, estao colocados 2i vertices.

• Cada vertice u colocado no nıvel i, 0 ≤ i ≤ j, apenas tem arcos para 2 vertices nonıvel i + 1, com 0 ≤ i ≤ j − 1, e tal que dois vertices u e v no nıvel i estao ligadosa vertices distintos no nıvel i + 1. Todos os vertices no nıvel j tem um unico arcopara o vertice t.

• A capacidade de cada arco (u, v) ∈ E, com u no nıvel i e v no nıvel i+1, 0 ≤ i ≤ j,e dada por 22(j−i)−1.

Nestas condicoes, qual o valor do somatorio das alturas de todos os vertices apos aexecucao do algoritmo de pre-fluxos generico?

Sugestao: Observe que∑n

i=0 2i = 2n+1 − 1.

a. (2j + j/2)

b. (j + 1)(2j+1 + j/2)

c. (2j+2 + j/2 + 2)

d. j (j+1)2

e. j2

2

f. j (2j + j/2)

g. (2j+1 + j/2 + 1)

h. j (j−1)2

i. (j + 2) (2j+2 + j/2)

Solucao: A resposta correcta e a b.

DEI/IST J. Marques Silva 06/2003

Page 94: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 90

II.2.20 Indique qual das seguintes frases esta incorrecta.

a. E possıvel identificar os caminhos mais curtos no numero de arcos, entre um verticefonte e todos os restantes vertices de um grafo, em O(V + E).

b. Num grafo dirigido acıclico nao e possıvel listar todos os caminhos em tempopolinomial em V e E.

c. Num grafo dirigido, o algoritmo de Dijkstra garante a correcta identificacao doscaminhos mais curtos, de um vertice fonte s para todos os outros vertices, apenasse os pesos dos arcos forem nao negativos.

d. A complexidade assimptotica do algoritmo de Bellman-Ford no melhor caso esempre maior do que a complexidade assimptotica do algoritmo de Dijkstra nopior caso.

e. Para grafos esparsos, a complexidade assimptotica do algoritmo de Johnson einferior a complexidade assimptotica do algoritmo de Floyd-Warshall.

f. O algoritmo de Floyd-Warshall pode ser executado em grafos contendo arcos compeso negativo e com ciclos negativos.

g. Na execucao do metodo de Ford-Fulkerson, com capacidades de valores racionais,o numero de caminhos de aumento e sempre finito.

h. Na execucao do algoritmo de Edmonds-Karp o numero de caminhos de aumentoe sempre finito, e limitado assimptoticamente por O(V E).

i. A complexidade assimptotica do algoritmo de pre-fluxo generico no pior caso esempre menor do que a complexidade assimptotica do algoritmo de Edmonds-Karp no melhor caso.

Solucao: A resposta certa (i.e. a frase incorrecta) e a i.

DEI/IST J. Marques Silva 06/2003

Page 95: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 91

II.2.21 Indique qual a menor complexidade assimptotica de um algoritmo para calcularo numero de caminhos mais curtos entre um par de vertices (i, j) apos a aplicacao doalgoritmo de Floyd-Warshall. (Considere que n representa o numero de vertices.)

a. n3 log n

b. n log n

c. n2 log n

d. n2

e. 1

f. 2n

g. n3

h. n!

i. n

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 96: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 92

II.2.22 Considere um grafo dirigido, G = (V,E), com n2 vertices, em que os verticesse encontram organizados por linhas e colunas (n linhas e n colunas). Um vertice naposicao (i, j), vij , tem os seguintes arcos:

• Um arco para o vertice na posicao (i + 1, j + 1), desde que 1 ≤ i ≤ n − 1,1 ≤ j ≤ n − 1.

• Um arco para o vertice na posicao (i, j + 1), desde que 1 ≤ i ≤ n, 1 ≤ j ≤ n − 1.

• Um arco para o vertice na posicao (i + 1, j), desde que 1 ≤ i ≤ n − 1, 1 ≤ j ≤ n.

Finalmente, existem M n2 arcos de vertices em posicoes (i, j) para vertices em posicoes(k, l), com i < k, j < l, e com M constante. Cada arco do grafo entre as posicoes (i, j)e (k, l), i.e. (vij , vkl), tem um peso ω(vij , vkl).

Nestas condicoes, indique qual a menor complexidade assimptotica para encontraro caminho mais curto entre os vertices nas posicoes (1, 1) e (n, n).

a. n2 log n

b. n log n

c. 2n

d. n3 log n

e. n2

f. n

g. n4

h. n4 log n

i. n3

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 97: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 93

II.2.23 Indique qual das frases seguintes e incorrecta.

a. A complexidade assimptotica (no pior caso) do algoritmo de Floyd-Warshall eindependente da existencia de ciclos negativos.

b. Para grafos densos o algoritmo de Bellman-Ford tem a mesma complexidade as-simptotica que o algoritmo de Floyd-Warshall.

c. Para grafos densos o algoritmo de Dijkstra tem a mesma complexidade assimptoticaque o algoritmo de Bellman-Ford.

d. No algoritmo de pre-fluxos o numero de operacoes de Relabel e O(V 2).

e. No algoritmo de pre-fluxos a complexidade da operacao de Push e O(1).

f. No algoritmo de pre-fluxos a complexidade da operacao de Relabel e Ω(V ).

g. A complexidade assimptotica do algoritmo de Bellman-Ford no melhor caso esempre maior do que a complexidade assimptotica do algoritmo de Dijkstra nopior caso.

h. Na execucao do algoritmo de Edmonds-Karp o numero de caminhos de aumentoe sempre finito, e limitado assimptoticamente por O(V E).

i. Na execucao do metodo de Ford-Fulkerson, com capacidades de valores racionais,o numero de caminhos de aumento e sempre finito.

Solucao: A resposta certa (i.e. a frase incorrecta) e a c.

DEI/IST J. Marques Silva 06/2003

Page 98: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 94

II.2.24 Indique a menor complexidade assimptotica para identificar a existencia deciclos negativos, atıngiveis a partir de um qualquer vertice, em grafos dirigidos e pesados.

a. V + E.

b. V log V .

c. E log E.

d. E log V .

e. V E.

f. V E log V .

g. V E log E.

h. V 2 log V .

i. V 2 log E.

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 99: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 95

II.2.25 Indique qual a menor complexidade assimptotica de um algoritmo eficientepara resolver o problema dos caminhos mais curtos entre todos os pares de verticesnum grafo dirigido acıclico. (Admita E = Ω(V ).)

a. V + E.

b. V log V .

c. E log E.

d. E log V .

e. V E.

f. V E log V .

g. V E log E.

h. V 2 log V .

i. V 2 log E.

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 100: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 96

II.2.26 Considere um grafo dirigido G = (V,E), com n vertices, em que V = v1, v2, . . . , vne E = (vi, vi+1), i = 1, . . . , n− 1 ∪ (vn, v1). Apos a execucao de um algoritmo paraidentificacao do fecho transitivo G∗ = (V,E∗), indique qual o valor de |E∗ − E|, isto eo numero de arcos adicionais criados pela execucao do algoritmo.

a. 2n − 1.

b. 2n.

c. 2n + 1.

d. n2 − 2n + 1.

e. n2 − n + 1.

f. n2 − n.

g. n2 − 2n.

h. 2n − n + 1.

i. 2n − 2n + 1.

Solucao: A resposta certa e a g.

DEI/IST J. Marques Silva 06/2003

Page 101: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 97

II.2.27 Considere o algoritmo generico de pre-fluxo (push-relabel) para calculo do fluxomaximo. O tuplo 〈mR,mP ,MR,MP 〉 representa respectivamente:

• o menor numero de operacoes de relabel, mR.

• o menor numero de operacoes de push, mP .

• o maior numero de operacoes de relabel, MR.

• o maior numero de operacoes de push, MP .

realizadas durante a execucao do algoritmo, e apos a inicializacao. Para o grafo dafigura, indique qual o tuplo 〈mR,mP ,MR,MP 〉 com os valores correctos.

b

a d

c

10

1

10

1010

a. 〈1, 3, 3, 5〉.

b. 〈2, 4, 3, 5〉.

c. 〈1, 3, 3, 5〉.

d. 〈2, 2, 3, 5〉.

e. 〈2, 4, 4, 6〉.

f. 〈3, 5, 4, 6〉.

g. 〈3, 4, 4, 8〉.

h. 〈3, 5, 5, 8〉.

i. 〈3, 4, 5, 8〉.

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 102: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 98

II.2.28 Considere o algoritmo de Boruvka para o calculo da arvore abrangente demenor custo, o qual mantem uma floresta de sub-arvores da MST. Admita um grafoG = (V,E) com n = |V |, n > 1, vertices e m = |E|, m > 1, arcos. Indique o menornumero de iteracoes (de colapsagem de sub-arvores) que e possıvel obter na execucaodeste algoritmo.

a. 0

b. 1

c. 2

d. log log n

e. log log m

f. log n

g. log m

h. n

i. m

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 103: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 99

II.2.29 Seja G = (V,E) um grafo dirigido, com funcao de pesos w : E → R, o qualnao contem ciclos negativos. Considere o processo de repesagem utilizado no algoritmode Johnson. Qual dos seguintes valores define o maior aumento nos valores dos pesosapos a repesagem?

a. O menor peso entre todos os arcos de E.

b. O maior peso entre todos os arcos de E.

c. O menor valor absoluto entre os pesos de todos os arcos de E.

d. O maior valor absoluto entre os pesos de todos os arcos de E.

e. O menor peso de um caminho mais curto entre quaisquer dois pares de verticesde G.

f. O maior peso de um caminho mais curto entre quaisquer dois pares de vertices deG.

g. O menor valor absoluto do peso de um caminho mais curto entre quaisquer doispares de vertices de G.

h. A diferenca entre o maior e o menor valor de pesos em G.

i. A soma de todos os pesos negativos.

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 104: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 100

II.2.30 Relativamente ao problema de calculo do fluxo maximo indique qual das afir-macoes seguintes e falsa.

a. Para redes de fluxo com capacidades inteiras, o algoritmo de Ford-Fulkerson apre-senta uma complexidade assimptotica em Ω(E|f∗|), em que |f∗| e o valor do fluxomaximo.

b. Existem redes de fluxo para as quais o algoritmo de Ford-Fulkerson demora tempoinfinito.

c. Existem redes de fluxo para as quais o algoritmo de Ford-Fulkerson tem um tempode execucao em Ω(V ).

d. O numero de caminhos de aumento na execucao do algoritmo de Edmonds-Karpe O(V E).

e. O numero de operacoes de Push denominadas saturating e O(V E).

f. No algoritmo Relabel-To-Front, o numero de operacoes de Push denominadas non-

saturating e Ω(V 2E).

g. O numero de operacoes de Relabel e O(V 2).

h. A complexidade da operacao de Push e O(1).

i. A complexidade da operacao de Relabel e Ω(V ).

Solucao: A resposta certa (i.e. a frase incorrecta) e a f.

DEI/IST J. Marques Silva 06/2003

Page 105: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 101

II.2.31 O par de valores 〈maxbe,maxfe〉 representa respectivamente o numero maximode arcos para tras (back edges) e o numero de maximo arcos para diante (forward edges)que e possıvel identificar em quaisquer grafos G = (V,E) por aplicacao da DFS. (Obser-ve que os valores maximos para os dois tipos de arcos sao obtidos para grafos diferentes.)Nesta situacao, indique quais as expressoes para o par de valores 〈maxbe,maxfe〉. (Ad-mita que |V | = n, e que nao existem arcos de um vertice para ele proprio.)

a. 〈n(n+1)2 , n(n−1)

2 − n〉.

b. 〈n(n−1)2 , n(n−1)

2 − n〉.

c. 〈n(n+1)2 , n(n+1)

2 〉.

d. 〈n(n−1)2 , n(n−1)

2 〉.

e. 〈n(n−1)2 − n, n(n−1)

2 − n〉.

f. 〈n − 1, n − 1〉.

g. 〈n, n〉.

h. 〈n(n+1)2 , n(n−1)

2 − n + 1〉.

i. 〈n(n−1)2 , n(n−1)

2 − n + 1〉.

Solucao: A resposta certa e a i.

DEI/IST J. Marques Silva 06/2003

Page 106: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 102

II.2.32 Considere os diferentes algoritmos para calculo dos caminhos mais curtos emgrafos dirigidos. Indique qual das seguintes afirmacoes e falsa.

a. Para assegurar a correccao do algoritmo de Dijkstra, e necessario os pesos dosarcos serem nao negativos.

b. Para grafos densos o algoritmo de Johnson tem a complexidade assimptotica doalgoritmo de Floyd-Warshall.

c. A complexidade assimptotica (no pior caso) do algoritmo de Floyd-Warshall eindependente da existencia de ciclos negativos.

d. Para grafos densos o algoritmo de Bellman-Ford tem a mesma complexidade as-simptotica que o algoritmo de Floyd-Warshall.

e. Para grafos densos o algoritmo de Dijkstra tem a mesma complexidade assimptoticaque o algoritmo de Bellman-Ford.

f. No processo de repesagem do algoritmo de Johnson a variacao do peso de um arcopode ser positiva ou negativa.

g. Existem grafos, com arcos com pesos negativos, para os quais a aplicacao doalgoritmo de Dijkstra produz o resultado correcto.

h. O algoritmo de Floyd-Warshall tem complexidade O(n3).

i. Apos a aplicacao do algoritmo de Bellman-Ford a complexidade para enumerar osarcos de um ciclo negativo e O(V + E).

Solucao: A resposta certa (i.e. a frase incorrecta) e a e.

DEI/IST J. Marques Silva 06/2003

Page 107: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 103

II.2.33 Considere uma rede de fluxo G = (V,E), tal que a aplicacao do algoritmogenerico de Push-Relabel resulta em 0 operacoes de envio de fluxo saturantes (i.e. satu-

rating pushes). Nestas condicoes qual a menor complexidade assimptotica que e possıvelassegurar para a aplicacao do algoritmo generico de Push-Relabel)?

a. E2.

b. V .

c. V 2 log E.

d. V E.

e. V 2E.

f. E |f∗|.

g. E2 |f∗|.

h. V + E.

i. V log V .

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 108: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 104

II.2.34 Considere uma rede de fluxo G = (V,E), tal que as capacidades c(u, v) decada arco (u, v) verificam c(u, v) ∈ 0, 1. Nestas condicoes, indique qual a menor

complexidade assimptotica para a execucao do algoritmo de Ford-Fulkerson.

a. V 2E.

b. E2.

c. V log V .

d. V 2 log E.

e. V E.

f. log(E) |f∗|.

g. E2 |f∗|.

h. V .

i. V + E.

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 109: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 105

II.2.35 Indique qual o numero maximo de ordenacoes topologicas distintas que podemexistir num grafo G = (V,E) dirigido acıclico, com |V | = n.

a. n!

b. (n − 1)!

c. nn

d. nn−1

e. (n − 1)n

f. n2

g. (n − 1)2

h. n log n

i. (n − 1) log(n − 1)

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 110: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 106

II.2.36 Apos a aplicacao do algoritmo de Floyd-Warshall num dado grafo G = (V,E),e admitindo a existencia de ciclos negativos, indique qual a menor complexidade as-simptotica de um algoritmo para enumerar os vertices de um qualquer ciclo negativo.(Nota: Considere a notacao V e E para representar respectivamente |V | e |E| na no-tacao assimptotica.)

a. V 3 log E

b. V 3 log V

c. V 3

d. V 2 log E

e. V 2 log V

f. V 2

g. (V + E) log E

h. (V + E) log V

i. V + E

Solucao: A resposta certa e a i.

DEI/IST J. Marques Silva 06/2003

Page 111: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 107

II.2.37 Determine a menor complexidade assimptotica de um algoritmo eficiente paraidentificar o fecho transitivo (transitive closure) num grafo dirigido acıclico G = (V,E).(Nota: Considere a notacao V e E para representar respectivamente |V | e |E| nanotacao assimptotica.)

a. V 3 log E

b. V 3 log V

c. V 3

d. V 2 log E

e. V 2 log V

f. V 2

g. (V + E) log E

h. (V + E) log V

i. V + E

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 112: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 108

II.2.38 Considere um grafo G = (V,E), dirigido, acıclico, com n = |V | e m = |E|.Indique a menor complexidade assimptotica de um algoritmo para calcular o numerode caminhos existentes no grafo.

a. n + m

b. n log n

c. (n + m) log n

d. (n + m) log m

e. n2

f. n2 log n

g. n2 log m

h. m2 log n

i. m2 log m

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 113: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 109

II.2.39 Seja G = (V,E) um grafo dirigido, com funcao de pesos w : E −→ −1, 1,e com n = |V | e m = |E|. Indique qual a menor complexidade assimptotica de umalgoritmo para determinar a existencia de ciclos em que todos os arcos tem peso igual.

a. m2 log m

b. m2 log n

c. n2 log m

d. n2 log n

e. n2

f. (n + m) log m

g. (n + m) log n

h. n log n

i. n + m

Solucao: A resposta certa e a i.

DEI/IST J. Marques Silva 06/2003

Page 114: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 110

II.2.40 A ordenacao topologica de um grafo G = (V,E), dirigido, com n = |V | em = |E|, diz-se bem definida se o grafo nao tem ciclos. Identifique qual o numero dearcos de G que e condicao necessaria para a ordenacao topologica de G ser bem definida.

a. n − 1

b. n

c. n×(n+1)2

d. n×(n−1)2

e. n × (n + 1)

f. n × (n − 1)

g. n × log n

h. (n − 1) × log(n − 1)

i. n2

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 115: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 111

II.2.41 Define-se uma sequencia de aumento, S, como um conjunto de caminhosde aumento escolhidos durante a aplicacao do metodo de Ford-Fulkerson num grafoG = (V,E). Define-se o tamanho de uma sequencia de aumento, |S|, como o numerode caminhos de aumento em S. Dois tamanhos de sequencias de aumento, |S1| e |S2|,dizem-se distintos se |S1| 6= |S2|. Para o grafo seguinte indique quantos tamanhos dis-tintos de sequencias de aumento e possıvel obter.

v1 v3 v5

s t

v2 v4 v6

2000

2000

10000

10000

10000

10000

2

2000

2000

a. 4002.

b. 4000.

c. 2001.

d. 2000.

e. 1001.

f. 1000.

g. 999.

h. 501.

i. 500.

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 116: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 112

II.2.42 Considere um grafo G = (V,E), dirigido, com n = |V | e m = |E|. Seja C onumero de componentes fortemente ligados (SCCs) de G, em que cada SCC tem maisdo que um vertice. Indique qual o conjunto de valores possıveis para a variacao nonumero de elementos de C quando um dos arcos de G e removido.

a. −1, 0

b. −1, 0, 1

c. −1, 0, 1, ..., bn/2c − 1

d. −1, 0, 1, ..., dn/2e + 1

e. −1, 0, 1, ..., bn/2c + 1

f. −1, 0, 1, ..., dn/2e − 1

g. −1, 0, 1, ..., n log m

h. −1, 0, 1, ..., n

i. −1, 0, 1, ..., n + 1

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 117: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 113

II.2.43 Um grafo G = (V,E), nao dirigido, diz-se ligado se existe pelo menos um cami-nho entre qualquer par de vertices. Proponha um algoritmo eficiente para determinarse um grafo e ligado.

Solucao: Chamar a DFS a partir de qualquer vertice. Se todos os vertices sao visitadoso grafo e ligado. Caso contrario nao e ligado. Complexidade: O(V + E).

DEI/IST J. Marques Silva 06/2003

Page 118: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 114

II.2.44 Considere o problema do emparelhamento maximo bipartido para um grafoG = (V,E), nao dirigido, bipartido, com V = L∪R. Para o calculo do emparelhamentomaximo bipartido admita a transformacao para o problema do fluxo maximo, atravesda definicao de uma rede de fluxo G′ = (V ′, E′), com V ′ = V ∪s, t e E′ = E∪(s, v) :v ∈ L ∪ (u, t) : u ∈ R. Nesta situacao estabeleca condicoes suficientes, relativasao conjunto de arcos E, tal que na aplicacao do algoritmo de Ford-Fulkerson qualquercaminho de aumento p verifique |p| = 3.

Solucao: |E| = O(1).

DEI/IST J. Marques Silva 06/2003

Page 119: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 115

II.2.45 A empresa de construcao civil Obra Lda. esta envolvida num projecto degrande dimensao para a construcao do itinerario principal IP-21, devendo assegurar arealizacao de um conjunto de N tarefas, ti, i = 1, . . . , N . Cada tarefa ti so pode serrealizada apos um conjunto de tarefas precedentes terem sido realizadas tambem. Nesteconjunto de N tarefas existem tarefas sem precedencias, e existe uma tarefa final querepresenta o fim da participacao da Obra Lda. na construcao do IP-21. Obviamente,nao existem tarefas com dependencias mutuas entre si. A relacao de precedencias edefinida por uma matriz P (N ×N), em que a entrada pij indica se a tarefa ti precedea tarefa tj . Admitindo que cada tarefa ti tem uma duracao de di meses, proponha umalgoritmo eficiente para a empresa Obra Lda. calcular a duracao necessaria (em meses)para a realizacao das N tarefas. Analise a complexidade do algoritmo proposto.

Solucao: Modelar o problema como um DAG, e encontrar o caminho mais longo noDAG. Para encontrar os caminhos mais longos num DAG, um algoritmo possıvel esemelhante ao algoritmo de caminhos mais curtos num DAG, mas trocam-se os sinaisaos pesos. O algoritmo corre em O(V +E), em que V representa o conjunto das tarefas,e E representa o conjunto de entradas na matriz de precedencias com valor 1.

DEI/IST J. Marques Silva 06/2003

Page 120: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 116

II.2.46 Considere um grafo G = (V,E), dirigido, acıclico. Seja pL o caminho de G como maior numero de arcos. Nestas condicoes, identifique as restricoes no numero de arcosde pL por forma a que o fecho transitivo de G, G∗ = (V,E∗), verifique |E∗| = O(|V |).

Solucao: |E| = O(|1|). Em qualquer outra situacao, com |E| 6= O(|1|), o numero dearcos cresceria mais depressa do que |E∗| = O(|V |).

DEI/IST J. Marques Silva 06/2003

Page 121: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 117

II.2.47 Proponha um algoritmo eficiente para enumerar os arcos de um ciclo negativoapos a aplicacao do algoritmo de Bellman-Ford.

Solucao: Exercıcio do CLRS.

DEI/IST J. Marques Silva 06/2003

Page 122: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 118

II.2.48 Considere um grafo G = (V,E), dirigido, com funcao de pesos w : E −→1, 2, . . . ,W − 1, para um inteiro nao negativo W . Sugira alteracoes ao algoritmo deDijkstra para permitir o calculo dos caminhos mais curtos, a partir de um vertice fontes, em tempo O(WV + E).

Solucao: Exercıcio do CLRS.

DEI/IST J. Marques Silva 06/2003

Page 123: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 119

II.2.49 Considere uma rede de fluxo G = (V,E), com fonte s e destino t, e admita quetodas as capacidades tomam valores inteiros. Assuma tambem que e conhecido o valordo fluxo maximo de G. Nesta situacao, admita que a capacidade de um arco e reduzidaem uma unidade. Proponha um algoritmo O(V + E) para actualizar o valor do fluxomaximo.

Solucao: Exercıcio do CLRS.

DEI/IST J. Marques Silva 06/2003

Page 124: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 120

Problemas do Tipo 3

DEI/IST J. Marques Silva 06/2003

Page 125: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 121

II.3.1 Suponha que utiliza o algoritmo de Edmonds-Karp para calcular o fluxo maximonuma rede de fluxo G = (V,E). Apos ter efectuado o calculo do fluxo maximo percebeque utilizou k (com k constante) valores incorrectos para as capacidades dos arcos. Noentanto, sabe quais os arcos com capacidades incorrectas e sabe tambem que as capaci-dades incorrectas diferem das capacidades correctas em uma unidade. Nestas condicoesindique qual a menor complexidade assimptotica para encontrar o valor correcto dofluxo maximo (apos as k capacidades incorrectas terem sido corrigidas). (Admita quequalquer vertice e atingıvel a partir de s e que t e atingıvel a partir de qualquer vertice,pelo que E = Ω(V ).) (Sugestao: Considere o caso k = 1, e depois generalize.)

a. V E

b. E log V

c. E2

d. V 2 log V

e. V 2 E

f. V E2

g. E

h. V 2

i. E log E

Solucao: A resposta certa e a g. (Observe que k e constante.)

DEI/IST J. Marques Silva 06/2003

Page 126: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 122

II.3.2 Considere uma rede de fluxo G = (V,E), com V = s ≡ x0, x1, . . . , xn, t ≡xn+1, e em que E = (s, x1), (x1, x2), . . . , (xn−1, xn), (xn, t). Admita que as capa-cidades dos arcos sao dadas pela expressao: c(xi, xi+1) = n + 1 − i, para 0 ≤ i ≤ n.Nestas condicoes indique o numero total de operacoes (saturating pushes, non-saturating

pushes, e relabels) executadas pelo algoritmo Relabel-To-Front. Note que nao devera con-siderar o numero de operacoes executadas na fase de inicializacao do algoritmo (paradefinir os pre-fluxos e a altura de s).

a. n (n+7)2

b. 2n2

c. n (n+1)2

d. 2n

e. 2n2 − 1

f. n2

g. n (n + 3)

h. n (n+4)2

i. n (n + 1)

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 127: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 123

II.3.3 Considere um grafo G = (V,E), dirigido, com funcao de pesos w : E −→ α, β,com α > 0 e β > |V | · α. Nestas condicoes, proponha um algoritmo eficiente paraencontrar o peso do caminho mais curto de um vertice fonte s ∈ V para qualquer outrovertice.

Solucao: Solucao proposta, com complexidade O(V + E):

a. Inicializar variaveis para BFS, d[v], π[v], etc. Definir variavel adicional c[v].

b. Remover arcos com peso β.

c. Definir contador c = 0.

d. Aplicar BFS a partir de s. Marcar os arcos visitados. Todos os vertices visitadosficam com c[v] = c.

e. Repetir enquanto existirem arcos de peso β, incidentes em vertices visitados e naomarcados:

(a) Incrementar c.

(b) Adicionar conjunto B de arcos com peso β, ainda nao marcados, incidentesem vertices v com com d[v] 6= ∞.

(c) Aplicar BFS, sobre arcos do conjunto B e arcos de peso α nao marcados.Marcar os arcos visitados. Todos os vertices visitados ficam com c[v] = c.

f. Para cada vertice com d[v] 6= ∞, o peso do caminho mais curto de s para v edefinido por: δ(s, v) = α · d[v] + β · c[v].

DEI/IST J. Marques Silva 06/2003

Page 128: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 124

II.3.4 Considere um grafo G = (V,E), dirigido e acıclico (DAG), e pesado com funcaode pesos em R. Nestas condicoes, proponha um algoritmo eficiente para calcular opeso dos caminhos de maior peso entre todos os vertices de G e um vertice destino t.(Descreva justificadamente o algoritmo proposto, argumente a sua correccao, e analisea sua complexidade assimptotica.)

Solucao: Uma solucao em O(V + E) e:

• Trocar cada arco (u, v) por um arco (v, u).

• Multiplicar por (−1) o peso de cada arco (v, u).

• Designar o vertice t como s.

• Calcular os caminhos mais curtos de s para todos os restantes vertices (num DAG)em O(V + E).

• Utilizar cada peso δ(s, u) calculado pelo ponto anterior, para obter o caminho demaior peso entre u e t, γ(u, t) = −δ(s, u).

DEI/IST J. Marques Silva 06/2003

Page 129: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 125

II.3.5 Considere um grafo dirigido G = (V,E), com V = s ≡ x0, x1, . . . , xr−1, xr ≡ t,e E = (xi, xi+1) ⊆ V × V : xi, xi+1 ∈ V, i = 0, 1, . . . , r − 1. Admita tambem quec(xi, xi+1) = k× (r− i), i = 0, 1, . . . , r− 1, k > 0. Indique, justificando, quais os valoresmınimo e maximo finais da funcao de alturas para qualquer dos vertices x1, . . . , xr−1do grafo G, apos a execucao de qualquer algoritmo de Preflow-Push.

Solucao: A altura mınima e |V | ou |V | + 1, respectivamente para |V | par ou ımpar, ea maxima e 2 × |V | − 2, dependendo da ordem das operacoes de Relabel e Push.

DEI/IST J. Marques Silva 06/2003

Page 130: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 126

Parte III.

Sıntese de Algoritmos & Topicos Adicionais

DEI/IST J. Marques Silva 06/2003

Page 131: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 127

Problemas do Tipo 1

DEI/IST J. Marques Silva 06/2003

Page 132: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 128

III.1.1 Considere a cadeia de caracteres Pα = x1x2 . . . xk, com xa 6= xb, 1 ≤ a, b ≤ k,e seja P uma cadeia de caracteres definida por P = PαPα . . . Pα, com |P | = k · (m + 1).Nestas condicoes, e para o algoritmo KMP tendo P como padrao, indique qual o valorde π[j], com j = m · k + i, 1 ≤ i ≤ k.

a. m · k + i − 1

b. m · k + i

c. (m − 1) · k + i − 1

d. (m − 1) · k + i

e. (m − 1) · k + i + 1

f. (m + 1) · k + i − 1

g. (m + 1) · k + i

h. (m + 1) · k + i + 1

i. m · k + i + 1

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 133: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 129

III.1.2 Considere o padrao P = abababccabcabc. Para o algoritmo de Knuth-Morris-Pratt, indique qual o ındice que permite obter o maior valor da funcao π.

a. 4

b. 5

c. 6

d. 7

e. 8

f. 9

g. 10

h. 11

i. 12

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 134: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 130

III.1.3 Considere o algoritmo greedy para o problema da Mochila com objectos frac-cionarios. No entanto, considere que os objectos a transportar nao sao fraccionarios.Nesta situacao, para qual dos conjuntos seguintes (de conjuntos de objectos e respectivolimite de peso) e que o algoritmo greedy produz uma solucao nao optima? (Cada objectoe representado como um tuplo 〈wi, vi〉.)

a. 〈1, 6〉, 〈3, 3〉, 〈2, 4〉; W = 3;

b. 〈2, 6〉, 〈2, 3〉, 〈2, 4〉; W = 4;

c. 〈2, 5〉, 〈3, 4〉〈3, 3〉, 〈2, 6〉; W = 6;

d. 〈3, 6〉, 〈2, 8〉, 〈4, 4〉, 〈5, 3〉; W = 6;

e. 〈1, 6〉, 〈2, 5〉, 〈3, 9〉, 〈2, 5〉; W = 5;

f. 〈2, 8〉, 〈3, 6〉, 〈3, 6〉, 〈4, 4〉; W = 6;

g. 〈3, 5〉, 〈5, 5〉, 〈4, 5〉, 〈6, 5〉; W = 8;

h. 〈2, 7〉, 〈2, 8〉, 〈2, 6〉, 〈2, 5〉; W = 6;

i. 〈4, 6〉, 〈5, 5〉, 〈2, 8〉, 〈3, 7〉; W = 5;

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 135: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 131

III.1.4 Considere o algoritmo para emparelhamento de cadeias de caracteres utilizandoautomatos finitos. Para o padrao P = abcabcabc, quantos pares (q, a) verificam δ(q, a) =1, isto e quantas transicoes existem para o estado 1?

a. 8

b. 4

c. 6

d. 1

e. 9

f. 2

g. 5

h. 7

i. 3

Solucao: A resposta certa e a h.

DEI/IST J. Marques Silva 06/2003

Page 136: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 132

III.1.5 Considere o padrao P = abababab, e seja π a funcao de prefixo do algoritmode Knuth-Morris-Pratt. Indique qual o valor da expressao:

π[1] + π[3] + π[5] + π[7]

a. 9

b. 5

c. 4

d. 10

e. 6

f. 3

g. 11

h. 7

i. 8

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 137: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 133

III.1.6 Considere o algoritmo de programacao dinamica para o problema da mochila,sendo m[i, j] definida por:

m[i, j] = max(m[i − 1, j],m[i − 1, j − wi] + vi)

com m[i, j] = 0 para i = 0 ou j = 0, m[i, j] = −∞ para j < 0.Para uma instancia do problema da mochila com os objectos v1 = 1, w1 = 1, v2 =

2, w2 = 2, v3 = 4, w3 = 3, v4 = 6, w4 = 4, v5 = 8, w5 = 5 e com um peso maximoW = 10, calcule o valor da expressao:

m[3, 4] + m[4, 7] + m[5, 10]

a. 38

b. 27

c. 35

d. 22

e. 33

f. 30

g. 25

h. 40

i. 20

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 138: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 134

III.1.7 Considere o problema da identificacao da maior subsequencia comum. Dadas assequencias S = ABDBCBABDC e T = BACBDCBACD, determine o comprimentoda maior sub-sequencia comum. Admita que o comprimento da maior subsequenciacomum entre as sequencias si e tj e definido por:

c[i, j] = 0 i = 0 ∨ j = 0c[i, j] = c[i − 1, j − 1] + 1 i, j > 0 ∧ si = tjc[i, j] = max(c[i − 1, j], c[i, j − 1]) i, j > 0 ∧ si 6= tj

Nesta situacao, calcule o valor da expressao:

c[10, 10] − (c[2, 7] + c[5, 9])

a. −2

b. −1

c. 0

d. 1

e. 2

f. 3

g. 4

h. 5

i. 6

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 139: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 135

III.1.8 Considere o problema da mochila. Calcule o valor maximo que e possıveltransportar numa mochila com peso limite W = 13, para o conjunto de objectos: w1 =1, v1 = 2;w2 = 2, v2 = 5;w3 = 5, v3 = 11;w4 = 7, v4 = 18;w5 = 10, v5 = 22. Admitaque o valor maximo que e possıvel transportar se o peso limite e j e apenas estaodisponıveis os objectos de 1 a i tem a seguinte formulacao:

v[0, j] = 0 j ≥ 0v[i, j] = −∞ j < 0v[i, j] = max(v[i − 1, j], v[i − 1, j − wi] + vi) Caso contrario

Nesta situacao, calcule o valor da expressao:

v[5, 13] − (v[3, 5] + v[4, 7])

a. −2

b. −1

c. 0

d. 1

e. 2

f. 3

g. 4

h. 5

i. 6

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 140: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 136

III.1.9 Considere o problema da identificacao da maior subsequencia comum (LCS).Dadas as sequencias S = ABDBCBABDC e T = BACBDCBACD, determine ocomprimento da LCS.

Admita que o comprimento da maior subsequencia comum entre as sequencias si etj e definido por:

c[i, 0] = 0 i = 0 ∨ j = 0c[i, j] = c[i − 1, j − 1] + 1 i, j > 0 ∧ si = tjc[i, j] = max(c[i − 1, j], c[i, j − 1]) i, j > 0 ∧ si 6= tj

a. 1

b. 3

c. 5

d. 7

e. 2

f. 4

g. 6

h. 8

i. 9.

Solucao: A resposta certa e a d (i.e. a LCS tem valor 7).

DEI/IST J. Marques Silva 06/2003

Page 141: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 137

III.1.10 Considere o problema da mochila. Calcule o valor maximo que e possıveltransportar numa mochila com peso limite W = 13, para o conjunto de objectos: w1 =1, v1 = 2;w2 = 2, v2 = 5;w3 = 5, v3 = 11;w4 = 7, v4 = 18;w5 = 10, v5 = 22.

Admita que o valor maximo que e possıvel transportar quando o peso limite e j eapenas estao disponıveis os objectos de 1 a i tem a seguinte formulacao:

v[0, j] = 0 j ≥ 0v[i, j] = −∞ j < 0v[i, j] = max(v[i − 1, j], v[i − 1, j − wi] + vi) Caso contrario

a. 26

b. 27

c. 28

d. 29

e. 30

f. 31

g. 32

h. 33

i. 34

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 142: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 138

III.1.11 Quantas ocorrencias de P=xxx existem em T=yzxxxxxxxxxxxxyz?

a. 4

b. 5

c. 6

d. 7

e. 8

f. 9

g. 10

h. 11

i. 12

Solucao: A resposta certa e a i.

DEI/IST J. Marques Silva 06/2003

Page 143: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 139

III.1.12 Para o problema de multiplicacao de uma sequencia de 5 matrizes com amesma dimensao, qual o maior numero de solucoes optimas que e possıvel encontrar?

a. 4

b. 6

c. 8

d. 10

e. 12

f. 14

g. 16

h. 18

i. 20

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 144: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 140

III.1.13 Considere o problema de emparelhamento de cadeias de caracteres utilizandoo algoritmo baseado em automatos finitos. Admita o padrao P = abababab, sendo osestados do automato finito numerados de 0 a 8 (e 8 e o estado que indica a existencia deum emparelhamento). Nestas condicoes, qual o estado que apresenta o maior numerode arcos de entrada (i.e. o estado para o qual transitam mais estados)?

a. 1

b. 2

c. 3

d. 4

e. 5

f. 6

g. 7

h. 8

i. Nenhuma das anteriores

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 145: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 141

III.1.14 Considere o automato finito representado, onde foram omitidos os sımbolosde transicao entre estados. O estado inicial e 0 e o estado final (aceitador) e 5.

0 1 2 3 4 5

Qual das seguintes sequencias podera ser identificada pelo automato? (Observe atransicao do estado 1 para o proprio estado 1.)

a. aabaa

b. bbaaa

c. abaab

d. babaa

e. bbbba

f. aaaab

g. ababa

h. bbaab

i. bbabb

Solucao: A resposta certa e c.

DEI/IST J. Marques Silva 06/2003

Page 146: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 142

III.1.15 Considere o problema da mochila, com peso limite W = 14, para o seguinteconjunto de objectos: w1 = 1, v1 = 3;w2 = 2, v2 = 4;w3 = 3, v3 = 9;w4 = 6, v4 =15;w5 = 8, v5 = 20. Admita que o valor maximo que e possıvel transportar, quando opeso limite e j e apenas estao disponıveis os objectos de 1 a i, tem a seguinte formulacao:

v[0, j] = 0 j ≥ 0v[i, j] = −∞ j < 0v[i, j] = max(v[i − 1, j], v[i − 1, j − wi] + vi) caso contrario

Determine o valor da seguinte expressao:

v[2, 3] + v[3, 3] + v[3, 5] + v[4, 8] + v[4, 12] + v[5, 8] + v[5, 12]

a. 128

b. 157

c. 156

d. 123

e. 96

f. 110

g. 133

h. 131

i. 145

Solucao: A resposta certa e a h.

DEI/IST J. Marques Silva 06/2003

Page 147: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 143

III.1.16 Considere o problema da mochila. Calcule o valor maximo que e possıveltransportar numa mochila com peso limite W = 15, para o conjunto de objectos: w1 =1, v1 = 1;w2 = 2, v2 = 3;w3 = 4, v3 = 9;w4 = 8, v4 = 18;w5 = 10, v5 = 36. Admita queo valor maximo que e possıvel transportar se o peso limite e j e apenas estao disponıveisos objectos de 1 a i tem a seguinte formulacao:

v[0, j] = 0 j ≥ 0v[i, j] = −∞ j < 0v[i, j] = max(v[i − 1, j], v[i − 1, j − wi] + vi) Caso contrario

a. 35

b. 40

c. 45

d. 50

e. Nenhuma das respostas anteriores.

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 148: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 144

III.1.17 Calcule o menor numero de moedas necessarias para realizar o troco deN = 23 para o conjunto de moedas d1 = 1, d2 = 5, d3 = 8, d4 = 10. Admita que omenor numero de moedas necessario para realizar o troco do valor j dispondo apenasdas moedas d1 a di e definido por:

c[i, 0] = 0 1 ≤ i ≤ nc[i, j] = +∞ i = 0 ∨ j < 0c[i, j] = min(c[i − 1, j], 1 + c[i, j − di]) Caso contrario

a. 3 moedas.

b. 4 moedas.

c. 5 moedas.

d. 6 moedas.

e. 7 moedas.

f. Nenhuma das respostas anteriores.

Solucao: A resposta certa e a a.

DEI/IST J. Marques Silva 06/2003

Page 149: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 145

III.1.18 De entre os codigos seguintes, indique um que representa um codigo de Huff-man optimo para o conjunto de frequencias: r:1, s:2, t:5, u:13, v:34.

a. r,s,t,u,v = 111100, 1110, 110, 10, 0.

b. r,s,t,u,v = 0, 11, 110, 1111, 1110.

c. r,s,t,u,v = 1110, 1111, 110, 10, 0.

d. r,s,t,u,v = 1110, 1111, 110, 11, 0.

e. Nenhuma das respostas anteriores.

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 150: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 146

III.1.19 Para o conjunto de frequencias r:1, s:2, t:5, u:13, v:34, e com o codigo deHuffman r,s,t,u,v = 1110, 1111, 110, 10, 0, qual o numero de bits necessario pararepresentar um ficheiro com 110000 caracteres?

a. 83000

b. 72000

c. 89000

d. 78000

e. Nenhuma das respostas anteriores.

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 151: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 147

III.1.20 Indique qual o numero de bits necessario para representar um ficheiro de ca-racteres, com frequencias r:1, s:2, t:5, u:13 e v:34, utilizando um codigo de comprimentofixo.

a. 440000

b. 220000

c. 330000

d. 550000

e. Nenhuma das respostas anteriores.

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 152: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 148

III.1.21 Supondo T=01010101 e P=101, quantas ocorrencias existem:

a. uma

b. duas

c. tres

d. quatro

e. cinco

f. seis

g. sete

h. oito

i. nove

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 153: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 149

III.1.22 Supondo T=01010101 e P=101, quantas comparacoes sao feitas pelo algoritmoelementar (naive) estudado nas aulas.

a. 11

b. 12

c. 13

d. 14

e. 15

f. 16

g. 17

h. 18

i. 19

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 154: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 150

III.1.23 Supondo T=abcdefghijk e P=efg, qual dos seguintes shifts representa umaocorrencia do padrao.

a. um

b. dois

c. tres

d. quatro

e. cinco

f. seis

g. sete

h. oito

i. nove

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 155: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 151

III.1.24 Supondo P=10101010101010101, para o algoritmo KMP qual das afirmacoesseguintes e correcta.

a. Π[16] = 11

b. Π[16] = 12

c. Π[16] = 13

d. Π[16] = 14

e. Π[16] = 15

f. Π[16] = 16

g. Π[16] = 17

h. Π[16] = 18

i. Π[16] = 19

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 156: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 152

III.1.25 Considere o problema da mochila. Calcule o valor maximo que e possıveltransportar numa mochila com peso limite W = 24, para o conjunto de objectos: w1 =2, v1 = 2;w2 = 4, v2 = 6;w3 = 8, v3 = 15;w4 = 14, v4 = 25;w5 = 20, v5 = 35. Admitaque o valor maximo que e possıvel transportar, quando o peso limite e j e apenas estaodisponıveis os objectos de 1 a i, tem a seguinte formulacao:

v[0, j] = 0 j ≥ 0v[i, j] = −∞ j < 0v[i, j] = max(v[i − 1, j], v[i − 1, j − wi] + vi) Caso contrario

a. 41

b. 42

c. 43

d. 44

e. 45

f. 46

g. 47

h. 48

i. 49

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 157: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 153

III.1.26 Considere o problema de multiplicacao de uma cadeia de matrizes. Dadas 4matrizes com dimensoes (4 × 3), (3 × 5), (5 × 4), (4 × 5), determine o menor numero demultiplicacoes escalares necessarios para realizar o produto das 4 matrizes. Admita queo menor numero de multiplicacoes escalares para calculo do produto Ai · · ·Aj e dadopor:

m[i, j] =

0 i = jmini≤k<jm[i, k] + m[k + 1, j] + pi−1 · pk · pj i < j

a. 110

b. 120

c. 130

d. 140

e. 150

f. 160

g. 170

h. 180

i. 190

Solucao: A resposta certa e a h.

DEI/IST J. Marques Silva 06/2003

Page 158: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 154

III.1.27 Supondo T=abcbcbcda e P=bcbcd, qual dos seguintes shifts representa umaocorrencia do padrao:

a. um

b. dois

c. tres

d. quatro

e. cinco

f. seis

g. sete

h. oito

i. nove

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 159: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 155

III.1.28 Considere o problema da mochila. Qual das seguintes formulas completa aseguinte especificacao da solucao para o problema?

v[0, j] = 0 j ≥ 0v[i, j] = −∞ j < 0

a. v[i, j] = max(v[i − 1, j − 1], v[i − 1, j − wi] + vi) Caso contrario

b. v[i, j] = max(v[i − 1, j] + vi, v[i − 1, j − wi] + vi) Caso contrario

c. v[i, j] = max(v[i − 1, j], v[i − 1, j − wi] + vj) Caso contrario

d. v[i, j] = max(v[i − 1, j], v[i, j − wi] + vi) Caso contrario

e. v[i, j] = max(v[i − 1, j] + vj , v[i − 1, j − wi]) Caso contrario

f. v[i, j] = max(v[i − 1, j] + vj , v[i − 1, j − wi] + vi) Caso contrario

g. v[i, j] = max(v[i − 1, j], v[i + 1, j − wi] + vi) Caso contrario

h. v[i, j] = max(v[i + 1, j], v[i − 1, j − wi] + vi) Caso contrario

i. v[i, j] = max(v[i − 1, j], v[i − 1, j − wi] + vi) Caso contrario

Solucao: A resposta certa e a i.

DEI/IST J. Marques Silva 06/2003

Page 160: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 156

III.1.29 Considere o problema de multiplicacao de uma cadeia de matrizes. Qual dasseguintes formulas completa a seguinte especificacao da solucao para o problema?

m[i, j] = 0 se i = j

a. mini≤k<jm[i + 1, k] + m[k, j] + pi−1 · pk · pj se i < j

b. mini≤k<jm[i, k + 1] + m[k, j] + pi−1 · pk · pj se i < j

c. mini≤k<jm[i, k] + m[k, j + 1] + pi−1 · pk · pj se i < j

d. mini≤k<jm[i, k − 1] + m[k, j] + pi−1 · pk · pj se i < j

e. mini≤k<jm[i, k + 1] + m[k, j] + pi+1 · pk · pj se i < j

f. mini≤k<jm[i, k − 1] + m[k, j] + pi · pk · pj se i < j

g. mini≤k<jm[i, k] + m[k + 1, j] + pi−1 · pk · pj se i < j

h. mini≤k<jm[i, k + 1] + m[k, j] + pk−1 · pk · pj se i < j

i. mini≤k<jm[i, k − 1] + m[k, j] + pk · pk · pj se i < j

Solucao: A resposta certa e a g.

DEI/IST J. Marques Silva 06/2003

Page 161: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 157

III.1.30 Quantas ocorrencias de P=xxx existem em T=yzxxxxxxxxxxxxyz?

a. quatro

b. cinco

c. seis

d. sete

e. oito

f. nove

g. dez

h. onze

i. doze

Solucao: A resposta certa e a g.

DEI/IST J. Marques Silva 06/2003

Page 162: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 158

III.1.31 Considere o problema da identificacao da maior subsequencia comum. Dadasas sequencias S = ABDBCBABDC e T = BACBDCBACD, determine o comprimen-to da maior sub-sequencia comum. Admita que o comprimento da maior subsequenciacomum entre as sequencias si e tj e definido por:

c[i, 0] = 0 i = 0 ∨ j = 0c[i, j] = c[i − 1, j − 1] + 1 i, j > 0 ∧ si = tjc[i, j] = max(c[i − 1, j], c[i, j − 1]) i, j > 0 ∧ si = tj

a. 9

b. 8

c. 7

d. 6

e. 5

f. 4

g. 3

h. 2

i. 1

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 163: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 159

III.1.32 Considere o problema da mochila. Calcule o valor maximo que e possıveltransportar numa mochila com peso limite W = 13, para o conjunto de objectos: w1 =1, v1 = 2;w2 = 2, v2 = 5;w3 = 5, v3 = 11;w4 = 7, v4 = 18;w5 = 10, v5 = 22. Admitaque o valor maximo que e possıvel transportar se o peso limite e j e apenas estaodisponıveis os objectos de 1 a i tem a seguinte formulacao:

v[0, j] = 0 j ≥ 0v[i, j] = −∞ j < 0v[i, j] = max(v[i − 1, j], v[i − 1, j − wi] + vi) Caso contrario

a. 26

b. 27

c. 28

d. 29

e. 30

f. 31

g. 32

h. 33

i. 34

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 164: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 160

III.1.33 Quantas ocorrencias de P=bcbc existem em T=abcbcbcd?

a. uma

b. duas

c. tres

d. quatro

e. cinco

f. seis

g. sete

h. oito

i. nove

Solucao: A resposta certa e a b.

DEI/IST J. Marques Silva 06/2003

Page 165: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 161

Problemas do Tipo 2

DEI/IST J. Marques Silva 06/2003

Page 166: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 162

III.2.1 Para o problema da maior sub-sequencia comum, considere X = 〈a, a, . . . , a〉 eY = 〈a, a, . . . , a〉, com |X| = k e |Y | = k + 1. Nesta situacao qual o numero de maioressub-sequencias comuns que e possıvel identificar?

a. 1

b. k

c. k + 1

d. k2

e. (k + 1)2

f. 2k

g. 2(k + 1)

h. 3k

i. 3(k + 1)

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 167: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 163

III.2.2 Para o problema da maior sub-sequencia comum, entre duas sequencias decaracteres X e Y , com |X| = n e |Y | = m, indique a menor complexidade assimptoticade um algoritmo para contar o numero de maiores sub-sequencias comuns entre X e Y ?

a. n.

b. m.

c. log n + log m.

d. n + m.

e. nm.

f. nm log n log m.

g. (n + m) log n log m.

h. 2n 2m.

i. nm + mn.

Solucao: A resposta certa e a e.

DEI/IST J. Marques Silva 06/2003

Page 168: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 164

III.2.3 Considere o padrao P = aa . . . a, com |a| = m. Nesta situacao, e na utilizacaodo algoritmo KMP, qual o valor da expressao:

m∑

i=1

π(i)

a. m

b. m − 1

c. m + 1

d. m(m−1)2

e. m(m+1)2

f. m(m − 1)

g. m(m + 1)

h. m2

i. m3

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 169: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 165

III.2.4 Para o problema de emparelhamento de cadeias de caracteres, utilizando oalgoritmo KMP, indique qual das afirmacoes seguintes e incorrecta.

a. Existem padroes tais que π[q] pode tomar valores apenas no conjunto S = numerosımpares ∪ 0.

b. Existem padroes tais que π[q] pode tomar valores apenas no conjunto S = numerospares ∪ 0.

c. Existem padroes tais que π[q] pode tomar valores apenas no conjunto 0, . . . .q−1.

d. Existem padroes tais que π[q] pode tomar valores apenas no conjunto 0, 1.

e. O valor de π[q] nao pode ser superior a m − 1, em que m e o comprimento dopadrao.

f. A complexidade assimptotica da execucao do algoritmo KMP (sem contabilizar opre-processamento) num texto com n caracteres e O(n).

g. A complexidade assimptotica da execucao do algoritmo KMP (contabilizando opre-processamento) num texto com n caracteres e um padrao com m caracteres eO(n + m).

h. Existem padroes tais que π[q] pode tomar valores apenas no conjunto S = numerosımpares ∪ 0, e |S| > 1.

i. Existem padroes tais que π[q] pode tomar valores apenas no conjunto S = numerospares ∪ 0, e |S| > 1.

Solucao: A resposta certa (i.e. a frase incorrecta) e a i.

DEI/IST J. Marques Silva 06/2003

Page 170: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 166

III.2.5 Os numeros de Fibonacci sao definidos pela formula recursiva f(i) = f(i −1) + f(i − 2), f(0) = 0, f(1) = 1. Indique as menores complexidades assimptoticas,respectivamente do tempo de execucao e do espaco necessario, de um algoritmo eficientepara calcular o numero de Fibonacci de ordem n, com n ≤ 1000000, baseado na formularecursiva.

a. O(1) e O(1)

b. O(1) e O(n)

c. O(n) e O(1)

d. O(n) e O(n)

e. O(n2) e O(n)

f. O(n2) e O(n2)

g. O(2n) e O(n)

h. O(2n) e O(n2)

i. O(2n) e O(2n)

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 171: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 167

III.2.6 Considere o problema de identificacao de cadeias de caracteres utilizando oalgoritmo baseado em automatos finitos. Qual o numero de transicoes existentes noautomato que identifica o padrao P = abaaba, nao contabilizando as transicoes para oestado inicial?

a. 12

b. 5

c. 6

d. 11

e. 7

f. 13

g. 8

h. 9

i. 10

Solucao: A resposta certa e d.

DEI/IST J. Marques Silva 06/2003

Page 172: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 168

III.2.7 Considere o algoritmo KMP para emparelhamento de cadeias de caracteres,em que o texto tem n caracteres e o padrao tem m caracteres. Indique o menor limitesuperior no numero de comparacoes entre caracteres do texto T e do padrao P que oalgoritmo KMP realiza.

a. n

b. 2n

c. 3n

d. 4n

e. 5n

f. n + m

g. 2(n + m)

h. 3(n + m)

i. 4(n + m)

j. 5(n + m)

Solucao: A resposta certa e a c.

DEI/IST J. Marques Silva 06/2003

Page 173: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 169

III.2.8 Suponha P um padrao qualquer e T um texto com |T | = 27. No caso doalgoritmo KMP, indique o menor limite superior no numero de actualizacoes do ındiceq face ao valor inicial. Note que que no algoritmo KMP o ındice q indica o comprimentomaximo do padrao (P ) ja identificado no texto (T ).

a. 1

b. 2

c. 27

d. 54

e. 108

f. 162

g. 17

h. 34

i. 51

Solucao: A resposta certa e a d.

DEI/IST J. Marques Silva 06/2003

Page 174: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 170

III.2.9 A empresa CanoaRent aluga canoas no rio Mira. A empresa dispoe de umconjunto de n ancoradouros, distribuıdos ao longo do rio, numerados por ordem de 1 an, sendo 1 o primeiro ancoradouro e n o ultimo ancoradouro. A empresa CanoaRentpermite o aluguer de canoas em qualquer ancoradouro i e a sua devolucao em qualquerancoradouro j, com j > i. O custo de alugar uma canoa no ancoradouro i e devolve-lano ancoradouro j e t[i, j]. Nestas condicoes proponha uma solucao para o problemade calcular o menor custo para viajar de canoa entre os ancoradouros 1 e n. (Descre-va justificadamente o algoritmo proposto, argumente a sua correccao, e analise a suacomplexidade assimptotica.)

Solucao: Definir p[i, j] como o custo mınimo para viajar entre os ancoradouros i e j,e admitir p[0, 0] = 0. O modelo de programacao dinamica resultante e:

p[i, j] = min(t[i, j],mini<k<j(p[i, k] + p[k, j])

DEI/IST J. Marques Silva 06/2003

Page 175: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 171

Problemas do Tipo 3

DEI/IST J. Marques Silva 06/2003

Page 176: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 172

III.3.1 Pretende-se calcular o valor da recorrencia seguinte (onde x mod 2 representao resto da divisao inteira de x por 2),

PS [n,m] = (PS [n − 1,m] ∗ (m mod 2) + PS [n − 1,m − 1]) mod 2, 1 < m < n

e onde PS [n, 1] = 1 e PS [n, n] = 1. Nestas condicoes, indique as menores complexida-des assimptoticas, respectivamente do tempo de execucao e do espaco necessario, paracalculo de PS(n,m).

a. 1 e n.

b. 1 e m.

c. n + m e 1.

d. n + m e n + m.

e. 2n+m e 2n+m.

f. nm e m.

g. nm e nm.

h. 2n+m e n + m.

i. 2n+m e nm.

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 177: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 173

III.3.2 Considere o problema da multiplicacao nao comutativa , definida num uni-verso de elementos C = c1, . . . , cm, tal que para qualquer par de elementos cr, cs ∈ C,(cr cs) ∈ C (embora cr cs possa diferir de cs cr). (A notacao c[r] e tambem uti-lizada para denotar o elemento cr.) Assuma que (cr cr) = cr, para qualquer cr ∈ C.Considere ainda o produto de n elementos, x1 . . . xn, em que xi ∈ C, i = 1, . . . , n.Pretende-se determinar se existe uma colocacao de parentesis tal que x1 . . . xn sejaigual a um elemento x ∈ C. Proponha, justificadamente, um algoritmo polinomial pararesolver este problema.

Sugestao: Considere a utilizacao dos predicados seguintes:

a. Produto(r, s, α) = 1 se e so se c[r] c[s] = α para 1 ≤ r, s ≤ m.

b. Existe(i, j, α) = 1 se e so se existe uma colocacao de parentesis entre xi e xj talque xi . . . xj = α.

Solucao: Um modelo de programacao dinamica, que resulta num algoritmo de com-plexidade polinomial, O(n3 m2), e o seguinte:

Existe(i, j, α) =

m∨

r=1

m∨

s=1

[Produto(r, s, α) ∧ (

j−1∨

k=i

[Existe(i, k, c[r]) ∧ Existe(k + 1, j, c[s])])

]

Sendo a resposta pretendida obtida para Existe(1, n, x).

DEI/IST J. Marques Silva 06/2003

Page 178: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 174

III.3.3 Considere que pretende atravessar o continente Americano de Norte a Sul,atraves da (futura) estrada de ligacao NS001. Para atingir este objectivo vai recorrerao aluguer de viaturas da empresa Rent001. Admita que ao longo da NS001 a empresaRent001 tem uma rede de N escritorios, e que o custo de alugar uma viatura entre osescritorios i e j e c(i, j). (Observe que o custo de alugar duas viaturas para viajar entreos escritorios i e i + 2, com uma viatura entre i e i + 1 e outra entre i + 1 e i + 2, podeser inferior a alugar apenas uma viatura para viajar entre os mesmos dois escritorios, ie i + 2.)

Nestas condicoes proponha um algoritmo eficiente para identificar a polıtica de alu-guer de viaturas para percorrer a NS001 que corresponde ao menor custo.

Solucao: Uma solucao e utilizar de programacao dinamica. Sendo m[i, j] o menorcusto para viajar entre i e j, obtemos:

m[i, j] = min

(c(i, j), min

i<k<j(m[i, k] + m[k, j]

)

A complexidade assimpotica associada a este modelo e O(N2), para os N escritoriosentre o inıcio e o fim da NS001. Uma outra solucao e interpretar a estrada NS001 comoum DAG e aplicar o algoritmo para caminhos mais curtos num DAG, com complexidadeO(V + E) que neste caso e tambem O(N2).

DEI/IST J. Marques Silva 06/2003

Page 179: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 175

III.3.4 Na qualidade de consultor para a area informatica de um banco de investi-mentos, e-lhe pedido que desenvolva um algoritmo para o problema de investimentos deduracao fixa no ano de 2002. Basicamente, o banco dispoe de M milhoes de euros (MEu-ro), e pode aplicar essa quantia em N diferentes aplicacoes financeiras. Cada aplicacaofinanceira Ai requer um investimento de um multiplo de Ii MEuro, e assegura uma ren-tabilidade de Ri MEuro por cada Ii MEuro investidos. Nesta situacao, proponha umalgoritmo eficiente para definir a polıtica de investimento que maximiza a rentabilidadedos M MEuro disponıveis. Analise a complexidade do algoritmo proposto.

Solucao: O raciocınio a utilizar e uma variacao do utilizado para o problema dos trocos,apresentado nos acetatos das aulas teoricas. A complexidade do algoritmo e O(N M).

DEI/IST J. Marques Silva 06/2003

Page 180: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 176

III.3.5 Relativamente ao problema anterior, considere que a rentabilidade obtida paracada aplicacao financeira depende do valor investido, sendo definido um valor Ri[j], j =1, . . . ,M para cada valor j de MEuro investido. Nesta situacao, proponha um algoritmoeficiente para definir a polıtica de investimento que maximiza a rentabilidade dos MMEuro disponıveis. Analise a complexidade do algoritmo proposto.

Solucao: r[i, k]: rentabilidade total maxima com i produtos e k MEuro. Formulacaode programacao dinamica:

r[i, k] = 0 k = 0r[i, k] = −∞ k < 0r[i, k] = maxr[i − 1, k],maxr[i, k − j] + Ri[j], j = 1, ..., k i, k > 1

A complexidade de um algoritmo, que utilize a formulacao anterior para calcular ovalor de r[N,M ] atraves do preenchimento de uma tabela (N × M), e O(NM 2).

DEI/IST J. Marques Silva 06/2003

Page 181: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 177

III.3.6 Considere o problema de colocacao de parentesis na multiplicacao de cadeias dematrizes. Admita que as matrizes apenas tem tres dimensoes possıveis: (n×n), (n×2n)e (2n×n), em que a primeira e a ultima matrizes tem dimensao (n×n). Considere queo numero total de matrizes e k, e que o numero de matrizes com dimensao n × n e i,sendo o numero das restantes matrizes dado por j = k−i. Indique qual o menor numerode multiplicacoes escalares que e possıvel obter por adequada colocacao de parentesis.

Solucao: Dadas as restricoes, e preciso fazer desaparecer as linhas ou colunas comdimensao 2n. A restante ordem e irrelevante. O custo de multiplicar duas matrizes(n × 2n) por (2n × n) e n × 2n × n, pelo que o numero de multiplicacoes escalares ej/2×2n3 = j×n3 para as j matrizes. Posteriormente temos j/2+i matrizes n×n, peloque o numero de multiplicacoes escalares necessario e (j/2 + i − 1) × n3. Finalmente ototal obtido e (3j/2 + i − 1) × n3 multiplicacoes escalares.

DEI/IST J. Marques Silva 06/2003

Page 182: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 178

DEI/IST J. Marques Silva 06/2003

Page 183: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 179

Parte IV.

Completude NP & Algoritmos de Aproximacao

DEI/IST J. Marques Silva 06/2003

Page 184: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 180

Problemas do Tipo 1

DEI/IST J. Marques Silva 06/2003

Page 185: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 181

IV.1.1 Identifique uma atribuicao de valores 〈x1, x2, x3, x4, x5, x6, x7〉 que satisfaz ainstancia seguinte do problema HornSAT:

ϕ = (x1) ∧ (¬x1 ∨ x2) ∧ (¬x2 ∨ x3) ∧

(¬x1 ∨ x4) ∧ (¬x3 ∨ ¬x4 ∨ x5) ∧

(¬x1 ∨ x7) ∧ (¬x5 ∨ ¬x7)

a. 〈1, 0, 1, 0, 1, 0, 1〉

b. 〈1, 1, 0, 1, 0, 0, 1〉

c. 〈1, 1, 1, 1, 0, 0, 0〉

d. 〈1, 0, 0, 0, 1, 1, 1〉

e. 〈0, 0, 0, 0, 0, 0, 0〉

f. A formula nao e satisfeita.

g. 〈0, 1, 0, 1, 0, 1, 0〉

h. 〈1, 0, 0, 0, 1, 1, 1〉

i. 〈1, 0, 0, 1, 1, 0, 0〉

Solucao: A resposta certa e a f.

DEI/IST J. Marques Silva 06/2003

Page 186: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 182

IV.1.2 Qual dos seguintes passos pertence ao metodo estudado para provar que umdeterminado problema X ∈ NPC?

a. Escolher um outro problema para a reducao de classe P.

b. Escolher um outro problema para a reducao de classe NP.

c. Escolher um outro problema para a reducao de qualquer classe.

d. Escolher um outro problema para a reducao da classe P e NP.

e. Escolher um outro problema para a reducao da classe P e NPC.

f. Verificar se X ∈ P.

g. Verificar se X /∈ P.

h. Verificar se X /∈ NP.

i. Verificar se X ∈ NP.

Solucao: A resposta certa e a i.

DEI/IST J. Marques Silva 06/2003

Page 187: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 183

Problemas do Tipo 2

DEI/IST J. Marques Silva 06/2003

Page 188: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 184

IV.2.1 Indique qual das frases seguintes esta incorrecta.

a. Existem problemas de decisao X, X ∈ NP , tal que existe um algoritmo polinomialque resolve X.

b. Se existe Y ∈ NPC, com X ∈ NP e Y ≤P X, entao X e NP-completo.

c. Se existe X ∈ NPC para o qual existe um algoritmo com complexidade as-simptotica em O(nk), entao P = NP .

d. Se existe X ∈ NP nao resoluvel em tempo polinomial entao para todo o Y ∈NPC, Y nao e resoluvel em tempo polinomial.

e. E possıvel 4CNFSAT ≤P 3CNFSAT .

f. E possıvel 3CNFSAT ≤P 2CNFSAT .

g. E possıvel 3CNFSAT ≤P 4CNFSAT .

h. E possıvel 2CNFSAT ≤P 3CNFSAT .

i. E possıvel 3CNFSAT ≤P CNFSAT .

Solucao: A resposta certa (i.e. a frase incorrecta) e a f.

DEI/IST J. Marques Silva 06/2003

Page 189: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 185

IV.2.2 Considere as classes de problemas de decisao P, NP e NPC. Indique qual dasseguintes frases esta incorrecta.

a. Os problemas da classe P podem ser resolvidos em tempo polinomial.

b. Nao sao conhecidos problemas de decisao X tais que X ∈ co−NP e X ∈ NPC.

c. Os problemas da classe NP podem ser verificados em tempo polinomial.

d. Sao conhecidos problemas de decisao X ∈ P e Y ∈ NPC tais que Y ≤P X.

e. Verifica-se que ∀Y∈NPC ,∀X∈P ,X ≤P Y.

f. Os problemas da classe P podem ser verificados em tempo polinomial.

g. Seja X ∈ NP e Y ∈ NPC. Para provar que X ∈ NPC, basta provar que Y ≤P X.

h. Verifica-se que ∀Y∈NPC ,∀X∈NP ,X ≤P Y.

i. A classe NP contem a classe P.

Solucao: A resposta certa (i.e. a frase incorrecta) e a d.

DEI/IST J. Marques Silva 06/2003

Page 190: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 186

IV.2.3 Qual das seguintes afirmacoes esta correcta.

a. Os problemas da classe NPC nao tem solucao.

b. A classe de problemas NPC e disjunta da classe de problemas P.

c. Os problemas da classe NPC podem ser solucionados em tempo polinomial.

d. A classe de problemas NPC contem a classe de problemas NP.

e. A classe de problemas P contem a classe de problemas NP.

f. A classe de problemas NPC nao e disjunta da classe de problemas P.

g. As classes P, NPC e NP sao todas disjuntas.

h. As instancias dos problemas da classe NPC tem solucoes que podem ser verificadasem tempo polinomial.

i. Os problemas da classe NP nao tem solucao.

Solucao: A resposta certa (i.e. a frase correcta) e a h.

DEI/IST J. Marques Silva 06/2003

Page 191: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 187

IV.2.4 Considere a restricao de formulas CNF a formulas CHorn. Uma clausula diz-seCHorn se contiver nao mais do que um literal complementado. Uma formula diz-seCHorn se todas as suas clausulas forem CHorn. O problema de decisao CHornSATconsiste em decidir a satisfacao de formulas CHorn. Nestas condicoes proponha umalgoritmo eficiente para o problema CHornSAT ou prove que o problema CHornSAT eNP-completo. (Descreva justificadamente a resolucao apresentada.)

Solucao: Algoritmo semelhante ao algoritmo para HornSAT (ver acetatos das aulasteoricas), mas o valor atribuıdo e 0. A cada passo, as clausulas seleccionadas sao as quetem apenas um literal negativo.

DEI/IST J. Marques Silva 06/2003

Page 192: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 188

IV.2.5 O problema de decisao SAT-k consiste no problema de SAT para formulas CNFem que se pretende satisfazer nao menos do que k clausulas. Prove que o problema SAT-k e NP-completo. (Descreva justificadamente a resolucao apresentada.)

Solucao: O problema esta claramente em NP. A resolucao e a seguinte: CNFSAT ≤P

SAT − k.

• Instancia de CNFSAT: formula ϕ.

• Instancia de SAT−k: formula ϕ′ ≡ ϕ, k = |ϕ|.

DEI/IST J. Marques Silva 06/2003

Page 193: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 189

Problemas do Tipo 3

DEI/IST J. Marques Silva 06/2003

Page 194: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 190

IV.3.1 O problema de isomorfismo de sub-grafo (ISOM) consiste em decidir se umgrafo G1 e sub-grafo de outro grafo G2. Prove que o problema de ISOM e NP-completo.Sugestao: Admita que os problemas CLIQUE e VC (cobertura de vertices) sao NP-completos.

Solucao: E simples provar que ISOM esta em NP. Para provar que ISOM e NP-dıficilbasta reduzir CLIQUE a ISOM. Considerar instancia 〈G = (V,E), k〉 de CLIQUE econstruir a instancia 〈G, Ck)〉 de ISOM, em que Ck representa um grafo completo comk vertices.

DEI/IST J. Marques Silva 06/2003

Page 195: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 191

IV.3.2 Considere o problema de provar a nao satisfacao de formulas proposicionaisem forma normal conjuntiva (i.e. conjuncao de disjuncoes de literais, em que cadaliteral e uma variavel proposicional ou a sua negacao). Indique justificadamente se esteproblema de decisao e NP-completo.

Solucao: O problema de decisao em causa esta em co-NP, dado o problema de satisfacaoestar em NP. A nao ser que P = NP, o problema de decisao em causa nao esta em NP,pelo que nao e NP-completo.

DEI/IST J. Marques Silva 06/2003

Page 196: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 192

IV.3.3 Considere o problema de decisao Soma-de-Subconjunto (SS), definido da se-guinte forma:

• Seja X um conjunto de valores inteiros, e seja t um valor inteiro. Existe algumsubconjunto S ⊆ X tal que t =

∑s∈S s?

Admita que este problema de decisao e NP-completo e utilize esta informacao para pro-var que o problema da Partic~ao-de-Conjunto (SP) e NP-completo, em que o problemade Partic~ao-de-Conjunto e definido da seguinte forma:

• Seja C um conjunto de valores inteiros. Existe algum subconjunto D ⊆ C tal que∑c∈C−D c =

∑d∈D d?

Solucao: O Problem Partic~ao-de-Conjunto (SP) esta claramente em NP. A dificul-dade e provar que e NP-difıcil. Para tal podemos reduzir Soma-de-Subconjunto (SS)a SP. Basta partir de uma instancia 〈S, t〉 de SS e criar uma instancia de SP com umconjunto D = S ∪ t + 1 ∪ 1 − t +

∑s∈S s. A reducao e polinomial.

DEI/IST J. Marques Silva 06/2003

Page 197: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 193

IV.3.4 Considere o problema de decisao Cobertura-de-Vertices (VC), definido daseguinte forma:

• Seja G = (V,E) um grafo, e seja k um valor inteiro, com k ≤ V . Nestas condicoesexiste um conjunto V ’, com k vertices, tal que qualquer arco de G e incidente empelo menos um dos vertices de V ’?

Admita que este problema de decisao e NP-completo e utilize esta informacao paraprovar que o problema da Cobertura-de-Conjuntos (SC) e NP-completo, em que oproblema de Cobertura-de-Conjuntos e definido da seguinte forma:

• Seja X um conjunto e seja F um conjunto de sub-conjuntos de X, tal que ∪f∈F f =X, e seja k um valor inteiro. Nestas condicoes existe algum sub-conjunto S ⊆ F ,com k elementos, tal que ∪s∈S = X?

Solucao: O problema Cobertura-de-Conjuntos (SC) esta claramente em NP. A difi-culdade e provar que SC e NP-difıcil. Para tal podemos reduzir Cobertura-de-Vertices(VC) a SC. Data uma instancia 〈G = (V,E), k〉 de VC, criar uma instancia de SC emque o conjunto X e definido por X = xuv | (u, v) ∈ E, e o conjunto F de subconjuntosde X e definido por F = Fv | v ∈ V , onde Fv = xvs | (v, s) ∈ E. A reducao eclaramente polinomial.

DEI/IST J. Marques Silva 06/2003

Page 198: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 194

IV.3.5 Considere o problema de decisao 2.5CNFSAT, que consiste em verificar a satis-facao de formulas proposicionais em forma normal conjuntiva para formulas com umnumero par de clausulas, e em que o numero de clausulas binarias (i.e. com dois literais)e igual ao numero de clausulas ternarias (i.e. com tres literais). Indique se o proble-ma de 2.5CNFSAT pertence a P ou a NPC. Caso considere que o problema pertencea P, apresente um algoritmo de tempo polinomial (no numero N de variaveis e M declausulas) para este problema. Caso considere que o problema pertence a NPC, provetal resultado.

Solucao: O problema esta em NPC. Claramente esta em NP, dado ser simples verifi-car uma potencial solucao em tempo polinomial no tamanho da instancia. Alem disso,e simples reduzir 3CNFSAT a este problema: basta pegar numa instancia de 3CNF-SAT com m clausulas ternarias e incluir m clausulas binarias, que sejam trivialmentesatisfeitas e definidas num conjunto diferente de variaveis.

DEI/IST J. Marques Silva 06/2003

Page 199: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 195

IV.3.6 Considere o seguinte problema de decisao. Trata-se de uma restricao de CNF-SAT (com N variaveis e M clausulas) em que apenas podem existir clasulas binariase ternarias, e em que o numero de variaveis que ocorrem em clasulas ternarias e naosuperior a K, com K constante. O problema e designado por 23FixKCNFSAT. Indi-que se o problema de 23FixKCNFSAT pertence a P ou a NPC. Caso considere que oproblema pertence a P, apresente um algoritmo de tempo polinomial (em N e M) paraeste problema. Caso considere que o problema pertenca a NPC, prove tal resultado.

Solucao: O problema 23FixKCNFSAT esta em P. Um algoritmo (polinomial) possıvelconsiste em enumerar as 2K atribuicoes das K variaveis que ocorrem nas clausulasternarias (tempo constante em N). Como resultado de cada atribuicao de valores asK variaveis, todas as clasulas ternarias (e algumas binarias) ficam satisfeitas ou naosatisfeitas. Caso alguma clausula (ternaria ou binaria) fique nao satisfeita, considera-se uma nova atribuicao. Caso todas as clausulas ternarias fiquem satisfeitas, faltaapenas considerar as clasulas binarias. O conjunto das clasulas binarias representa umainstancia do problema de 2CNFSAT, o qual pode ser resolvido em tempo linear emM + (N − K).

DEI/IST J. Marques Silva 06/2003

Page 200: Colect^anea de Problemas An alise e S ntese de Algoritmos · PDF fileProponha um algoritmo e ciente para contar o n umero de 0’s na matriz A, e analise a sua complexidade. Indique

Problemas de ASA 196

IV.3.7 Considere o seguinte problema de decisao. Trata-se de uma restricao de CNF-SAT (com N variaveis e M clausulas) em que apenas podem existir clausulas binarias(com 2 literais) e quaternarias (com 4 literais), e em que o numero de clausulas binariase nao superior a K, com K constante. O problema e designado por 42BoundedKCNFSAT.Indique se o problema de 42BoundedKCNFSAT pertence a P ou a NPC. Caso considereque o problema pertence a P, apresente um algoritmo de tempo polinomial (em N eM) para este problema. Caso considere que o problema pertence a NPC, prove talresultado.

Solucao: O problema esta em NPC. Obviamente esta em NP. Convem tambem observarque o numero de clausulas binarias e irrelevante. Por exemplo, basta reduzir 3CNFSAT a42BoundedKCNFSAT, expandindo cada clausula ternaria em duas quaternarias, e fixandoa 0 o numero de clausulas binarias.

DEI/IST J. Marques Silva 06/2003