Buscar

Análise de Algoritmos ATIVIDADE 4 _ Passei Direto

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Impresso por davilinares.tlp, E-mail davilinares.tlp@gmail.com para uso pessoal e privado. Este material pode ser protegido por
direitos autorais e não pode ser reproduzido ou repassado para terceiros. 07/06/2023, 12:48:05
• 
••••• Pergunta 1 
1 em 1 pontos 
Conhecer detalhes funcionamento algoritmos mais tradicionais é importante, para que os de dos
as por na ideias implementadas eles possam ser aproveitadas solução problemas correlatos. de
Esse é o caso das estratégias empregadas ordenação linear dados memória.na de em 
 
Considerando esse contexto, analise asserções a seguir e a relação proposta entre elas.as 
 
I. Dado um conjunto de n inteiros intervalo 0 a k, é possível construir algoritmo no de um que
aprimore a entrada em um tempo Θ(n + k) e que responda quantos númer existem intervalo os no
[a ... b] em um tempo O(1). 
Porque: 
II. O aprimoramento da entrada, pré-processamento, pode ser feito com base ou no
algoritmo counting sort e a obtenção da quantidade de números no intervalo informado acontece 
por de meio uma operação computacional elementar. 
 
Resposta 
Selecionada: 
 
As asserções I e são proposições verdadeiras, e a é uma justificativa II II
correta da I. 
Resposta Correta: 
As asserções I e são proposições verdadeiras, e a é uma justificativa II II
correta da I. 
Comentário 
da resposta: 
Resposta certa. O algoritmo pode começar com os primeiros passos executados 
pelo counting sort. Nesse caso, três primeiros laços atuarão os no
aprimoramento entrada, o demandará custo + k), assim como o da que um Θ(n
algoritmo counting sort. Logo, o vetor auxiliar utilizado pelo algoritmo, C,
conterá cada posição i ] o número elementos menores iguais a i em C[ de ou no
vetor original. Para obter a quantidade números presentes intervalo de no [a ...
b], uma operação elementar subtração a - 1 ] pode ser executada. de C[ b ] - C[
Nesse caso, ela demandará tempo O(1).um 
 
 
••••• Pergunta 2 
1 em 1 pontos 
A ordenação memória é uma operações mais comuns executadas por de dados em das
algoritmos computacionais. Embora existam diferentes estratégias para esse tipo de operação, 
poucas delas conseguem alcançar tempo computacional linear.um 
 
Algoritmo Ordenação Linear Simplificada 
Entrada: Um vetor A n inteiros cujos valores são 1 de ou 2. 
Saída: Vetor A com valores ordenados forma não-decrescenteos de 
1. Defina k 0← 
2. para para para para para i 1 n ← até façafaçafaçafaçafaça 
3. sesesesese A[ i ] = k 1, entãoentãoentãoentãoentão ← k + 1 
 
Impresso por davilinares.tlp, E-mail davilinares.tlp@gmail.com para uso pessoal e privado. Este material pode ser protegido por
direitos autorais e não pode ser reproduzido ou repassado para terceiros. 07/06/2023, 12:48:05
4. para ipara ipara ipara ipara i ← 1 k até façafaçafaçafaçafaça 
5. A[ i ] ← 1 
6. k + 1 para para para para para i ← até n façafaçafaçafaçafaça 
7. A[ i ] ← 2 
8. Aretornaretornaretornaretornaretorna 
 
 
Nesse contexto, considerando o algoritmo apresentado, analise as afirmativas a seguir e assinale 
V para a(s) verdadeira(s) e F para a(s) falsa(s). 
 
I. ( ) Para vetor A contendo m posições com valor 1 e n posições com valor o algoritmo um 2,
realiza m + n operações atribuições vetor de ao A. 
II. ( ) O algoritmo é estável. 
III. ( ) Para qualquer sequência valores aceitos pelo algoritmo, primeiras posições vetor de as do
A serão ocupadas pelo valor 2. 
IV. ( ) O maior valor possível para k é n. 
 
Agora, assinale a alternativa apresenta a sequência correta:que 
Resposta Selecionada: 
V, V, V. F, 
Resposta Correta: 
V, V, V. F, 
Comentário da
resposta: 
Resposta certa. Para uma entrada composta m valores 1 e n valores o de 2,
primeiro laço algoritmo vai finalizar com o valor do de k = m e, portanto, o 
segundo laço vai realizar m atribuições vetor O último laço realiza tantas ao A.
atribuições vetor A quanto o número valores 2 presentes entrada, ao de na ou
seja, n atribuições. Portanto, serão realizadas m + n atribuições a Como A. os
elementos c mesmo valor têm sua ordem alterada vetor saída, o om não no de
algoritmo é dito estável. O segundo laço algoritmo é responsável pela do
atribuição das primeiras posições do vetor com valor 1. Finalmente, como o valor 
k é incrementado para cada valor 1 encontrado vetor, o seu maior valor no
possível acontece quando a entrada é composta apenas valores Neste de 1.
caso, k = n. 
 
 
••••• Pergunta 3 
0 em 1 pontos 
O algoritmo counting sort tem larga aplicabilidade pelo seu desempenho linear na ordenação de
dados em memória. No entanto, o maior consumo de espaço em memória pode restringir seu uso 
em de determinados cenários. Outra característica é sua estabilidade quanto posicionamento ao 
elementos com o mesmo valor. 
 
Considerando que vetor A n posições é passado como parâmetro para o um de
algoritmo counting sort e dois elementos posições i e j têm o mesmo valor k (A[ i ] = que nas A[
j ] = k), assinale a alternativa correta quanto funcionamento algoritmo. Assuma ao do que um
vetor B é retornado pelo algoritmo. 
 
Impresso por davilinares.tlp, E-mail davilinares.tlp@gmail.com para uso pessoal e privado. Este material pode ser protegido por
direitos autorais e não pode ser reproduzido ou repassado para terceiros. 07/06/2023, 12:48:05
 
Resposta 
Selecionada: 
 
Como A[ i ] = A[ j ] vetor no de origem, então as posições relativas entre esses 
elementos podem ser alteradas vetor saída no de B. 
Resposta 
Correta: 
 
O algoritmo é estável, porque a posição C[ k ] do vetor auxiliar C é 
decrementada após a alocação e é mais incrementada.de k em B, não 
Comentário da
resposta: 
Resposta incorreta. Analise como o algoritmo counting sort executa a 
ordenação vetor A qualquer contendo dois mais valores iguais. de um ou
Observe como o vetor auxiliar C é usado para posicionar elementos os em B. 
 
 
 
••••• Pergunta 4 
1 em 1 pontos 
Uma estratégia muito utilizada desenvolvimento algoritmos recursivos é aplicar a técnica no de
de divisão e conquista. Nesse caso, o problema original é dividido problemas menores, em os
quais são solucionados e, posteriormente, combinados para formar a solução do problema inicial. 
Um exemplo é o problema multiplicação matrizes quadradas (mesmo número linhas e de de de
colunas), cujo algoritmo iterativo é apresentado a seguir: 
 
Algoritmo MultiplicaMatrizQuadrada 
Entrada: Duas matrizes A e B quadradas manho nde ta 
Saída: Matriz C = A × B 
1. Defina uma matriz C quadrada de tamanho n 
2. paraparaparaparapara i 1 até n ← faça 
3. j 1 até n para para para para para ← faça 
4. cij ← 0 
5. k 1 até n paraparaparaparapara ← faça 
6. cij ← cij + a × bik kj 
7. Cretornaretornaretornaretornaretorna 
 
 Suponha, então, uma versão recursiva desse algoritmo, chamada , pode ser MultiplicaRecursivoMultiplicaRecursivoMultiplicaRecursivoMultiplicaRecursivoMultiplicaRecursivo
obtida por meio divisão matrizes B e C 4 matrizes tamanho n/2 (assuma n da das A, em de que
é potência exata 2), conforme imagem a seguir:de 
 
 
Considerando essas informações e conteúdos estudados, analise seguintes afirmativas.os as 
 
I. O algoritmo MultiplicaRecursivo terá desempenho superior que a versão iterativa apresentada. 
II. O caso base do algoritmo será sesesesese n = 1, então retornaentão retornaentão retornaentão retornaentão retorna c11 = a × b11 11. 
 
Impresso por davilinares.tlp, E-mail davilinares.tlp@gmail.com para uso pessoal e privado. Este material pode ser protegido por
direitos autorais e não pode ser reproduzido ou repassado para terceiros. 07/06/2023, 12:48:05
III. Serão necessárias 8 chamadas recursivas ao algoritmo MultiplicaRecursivo, para a construção 
de as todas submatrizes Cij. 
IV. A etapade divisão das matrizes A, B e C em submatrizes pode impactar no desempenho geral 
do algoritmo. 
 
Está correto apenas o afirma em:que se 
Resposta Selecionada: 
II e III. 
Resposta Correta: 
II e III. 
Comentário 
da resposta: 
Resposta certa. Considerando a estratégia divisão matrizes originais de das em
4 submatrizes, o algoritmo recursivo pode ser descrito como a seguir: 
Algoritmo MultiplicaRecursivo 
Entrada: Duas matrizes A e B quadradas tamanho nde 
Saída: Matriz C = A × B 
01. de Defina uma matriz C quadrada tamanho n 
02. n = 1 sesesesese entãoentãoentãoentãoentão 
03. c = a × bretornaretornaretornaretornaretorna 11 11 11 
04. sesesesese não não não não não 
05. as em Particionar matrizes B e C A, 4 submatrizes 
06. C = MultiplicaRecursivo(A ) + MultiplicaRecursivo(A11 11, B11 12, B21) 
07. C = MultiplicaRecursivo(A ) + MultiplicaRecursivo(A12 11, B12 12, B22) 
08. C = MultiplicaRecursivo(A ) + MultiplicaRecursivo(A21 21, B11 22, B21) 
09. C = MultiplicaRecursivo(A ) + MultiplicaRecursivo(A22 21, B12 22, B22) 
10. Cretornaretornaretornaretornaretorna 
Como cada uma das submatrizes tem n entradas, cada uma das 4 adições 2/4 de
submatrizes demanda tempo Logo, a equação recorrência um Θ(n2). de que
descreve o algoritmo é dada por: 
• T(1) = se n = 1Θ(1), 
• T(n) = 8T(n/2) + se n > 1Θ(n2), 
Pela aplicação teorema mestre, a solução fechada recorrência é T(n) = do da
Θ(n3), ou seja, não diferença desempenho entre ambas versões há de do 
algoritmo. Além disso, como a etapa divisão matrizes é pior de das Θ(n2), no
caso, ela não tem impacto sobre a complexidade geral algoritmo.do 
 
 
••••• Pergunta 5 
1 em 1 pontos 
O conceito recursão é antigo e era explorado muito antes desenvolvimento de já do da
computação. entanto, até hoje, vários problemas são modelados com funções recorrência No de
e estas dão subsídio desenvolvimento várias soluções computacionais. Uma das ao de
recorrências antigas, usadas pela civilização egípcia, é conhecida como multiplicação por 
duplicação. A equação recorrência a define é descrita a seguir:de que 
 
• x · y = x = 00, se 
• x · y = + y), se x é par⌊x/2⌋ · (y 
• x · y = se x é ímpar⌊x/2⌋ · + y) + y, (y 
 
Impresso por davilinares.tlp, E-mail davilinares.tlp@gmail.com para uso pessoal e privado. Este material pode ser protegido por
direitos autorais e não pode ser reproduzido ou repassado para terceiros. 07/06/2023, 12:48:05
 
Considerando essa equação recorrência, assinale a alternativa que indica o algoritmo de
recursivo implementa corretamente a multiplicação por duplicação. O algoritmo que
Multiplicador recebe como entra dois inteiros x e y a serem multiplicados, e retorna o valor da de
x · y. 
Resposta Selecionada: 
Algoritmo Multiplicador 
1. 0, x = sesesesese entãoentãoentãoentãoentão 
2. 0retornaretornaretornaretornaretorna 
3. sesesesese não não não não não 
4. x’ ← ⌊ ⌋x/2 
5. y’ ← y + y 
6. prod Multiplicador ← (x’, y’) 
7. x é ímpar, sesesesese entãoentãoentãoentãoentão 
8. prod prod + y← 
9. prodretornaretornaretornaretornaretorna 
Resposta Correta: 
Algoritmo Multiplicador 
1. 0, x = sesesesese entãoentãoentãoentãoentão 
2. 0retornaretornaretornaretornaretorna 
3. sesesesese não não não não não 
4. x’ ← ⌊ ⌋x/2 
5. y’ ← y + y 
6. prod Multiplicador ← (x’, y’) 
7. x é ímpar, sesesesese entãoentãoentãoentãoentão 
8. prod prod + y← 
9. prodretornaretornaretornaretornaretorna 
Comentário da
resposta: 
Resposta certa. O pseudocódigo algoritmo recursivo implementa a do que
recorrência é descrito a seguir: 
 
Algoritmo Multiplicador 
1. 0, x = sesesesese entãoentãoentãoentãoentão 
2. 0retornaretornaretornaretornaretorna 
3. sesesesese não não não não não 
4. x’ ← ⌊ ⌋x/2 
5. y’ ← y + y 
6. prod Multiplicador ← (x’, y’) 
7. x é ímpar, sesesesese entãoentãoentãoentãoentão 
8. prod prod + y← 
9. prodretornaretornaretornaretornaretorna 
 
 
••••• Pergunta 6 
1 em 1 pontos 
Impresso por davilinares.tlp, E-mail davilinares.tlp@gmail.com para uso pessoal e privado. Este material pode ser protegido por
direitos autorais e não pode ser reproduzido ou repassado para terceiros. 07/06/2023, 12:48:05
Os conceitos fundamentam a construção que de estratégias gulosas são importantes para que 
uma modelagem precisa possa ser empregada durante a proposição soluções. Essa análise de
deve preceder, inclusive, a etapa projeto algoritmo guloso.de de um 
 
Nesse contexto, dado conjunto { x , x , x } pontos reta números reais, analise um 1 2 …, n de na dos
as asserções a seguir e a relação proposta entre elas. 
 
I. É possível projetar uma estratégia gulosa para encontrar o menor conjunto de intervalos 
fechados comprimento 1 (um) contendo todos pontos.de os 
Porque: 
II. A cada etapa da estratégia gulosa uma escolha local ótima pode ser feita de modo a garantir 
a tenção uma solução final ótima.ob de 
 
Resposta 
Selecionada: 
 
As asserções I e são proposições verdadeiras, e a é uma justificativa II II
correta da I. 
Resposta Correta: 
As asserções I e são proposições verdadeiras, e a é uma justificativa II II
correta da I. 
Comentário 
da resposta: 
Resposta certa. Considere o intervalo mais à esquerda. Sabemos que esse 
intervalo deve conter o ponto mais à esquerda. Então, sabemos que seu lado 
esquerdo é exatamente o ponto mais à esquerda. Portanto, simplesmente 
removemos qualquer ponto n pertença conjunto informado e que ão ao que
esteja a uma unidade distância ponto, uma vez que eles estão contidos de do
neste único intervalo. Em seguida, nós apenas repetimos esse processo até que 
todos pontos sejam cobertos. Como cada etapa uma escolha os em há
claramente ótima onde colocar o intervalo mais à esquerda, essa solução de
final é ótima. Portanto, ambas afirmativas são verdadeiras e a justifica a as II
primeira. 
 
 
••••• Pergunta 7 
1 em 1 pontos 
O algoritmo counting sort constitui uma alternativa eficiente para a ordenação dados de em
memória, que ele demanda tempo computacional ordem entanto, ele faz já um da de Θ(n). No
maior uso do espaço em memória, por precisar que vetores auxiliares sejam criados durante sua 
execução. 
 
Considerando a execução algoritmo sobre vetor A = {4, do um 1, 5, 0, 1, 6, 5, 1, 5, 3}, em que 
todos valores são menores os que k = 7, analise afirmativas a seguir.as 
 
I. Após o primeiro laço que inicializa cada posição do vetor auxiliar C com zero, o segundo laço 
finaliza com o vetor C = { 1, 3, 0, 1, 1, 3, 1 }. 
II. Ao término terceiro laço, o vetor auxiliar C definido corpo do no do algoritmo terá os seguintes 
valores armazenados {0, 3, 3, 4, 5, 8, 9}. 
III. A primeira iteração último laço algoritmo faz com que o valor 3 seja atribuído à posição do do
4 vetor do A. 
 
Impresso por davilinares.tlp, E-mail davilinares.tlp@gmail.com para uso pessoal e privado. Este material pode ser protegido por
direitos autorais e não pode ser reproduzido ou repassado para terceiros. 07/06/2023, 12:48:05
IV. A posição 4 corresponde à última posição vetor A a ser preenchida pelo laço final do do
algoritmo. 
 
Está correto apenas o afirma em:que se 
Resposta Selecionada: 
I, II e III. 
Resposta Correta: 
I, II e III. 
Comentário 
da resposta: 
Resposta certa. O segundo laço do algoritmo é responsável por contabilizar a 
frequência cada valor vetor Então, como existem: 1 ocorrência 3 de do A. de 0;
ocorrências 0 ocorrências 1 ocorrência 1 ocorrência 3 de 1; de 2; de 3; de 4;
ocorrências 5 e 1 ocorrência o vetor C terá seguintes valores, de de 6, os ao
término segundo laço {1, 1}. O terceiro laço realiza uma soma do 3, 0, 1, 1, 3,
acumulada cada posição. Porém, como o primeiro índice vetor é de do 0, as
somas devem ser decrementadas Neste caso, término desse laço,o de 1. ao
valor C será {0, de 3, 3, 4, 5, 8, 9}. A primeira iteração último laço posiciona do
o elemento 3 quarta posição que na de A, já C[ 3 ] = 4. O último valor a ser 
posicionado vetor A é o elemento Mas como no 4. C[ 4 ] = 5, ele é ocado al na
posição 5 vetor.do 
 
••••• Pergunta 8 
0 em 1 pontos 
Um típico problema que algoritmos gulosos são aplicados é conhecido como em agendamento 
para minimizar o tempo médio finalizaçãode . Várias estratégias têm sido propostas para 
oferecer uma solução tempo computacionalmente viável. Suponha conjunto S = { a , a , em um 1 2
…, a } n de tarefas, cada tarefa a demanda p unidades em que i i de tempo para ser concluída a 
partir do momento em que é iniciada. As tarefas podem ser executadas apenas uma por vez. Seja 
ci o tempo finalização tarefa a , isto o tempo que a tarefa a completa seu de da i é, em i
processamento. 
 
Considerando o objetivo é minimizar o tempo médio para finalização todas tarefas, que de as ou
seja, minimizar , analise afirmativas a seguir e assinale V para a(s) verdadeira(s) e F para a(s) as
falsa(s). 
 
I. ( ) Se as tarefas forem ordenadas pela quantidade de unidades de tempo para serem finalizadas 
(p ),i então a complexidade algoritmo será O(n log n).do 
II. ( ) Um algoritmo guloso que processa as tarefas em ordem crescente p obtém a solução de i
ótima para qualquer conjunto tarefas.de 
III. ( ) Considerando S composto apenas s tarefas a e ade dua 1 2 com p = 3 e p = o tempo 1 2 5,
médio finalização S é independente ordem execução das tarefas.de de da de 
IV. ( ) Uma solução gulosa, baseada no tempo de processamento cada tarefa, apresenta uma de
estrutura local ótima cada iteração.em 
 
Agora, assinale a alternativa apresenta a sequência correta.que 
 
Resposta Selecionada: 
Impresso por davilinares.tlp, E-mail davilinares.tlp@gmail.com para uso pessoal e privado. Este material pode ser protegido por
direitos autorais e não pode ser reproduzido ou repassado para terceiros. 07/06/2023, 12:48:05
F, F, V, V. 
Resposta Correta: 
V, V, V. F, 
Comentário 
da resposta: 
Resposta incorreta. Observe como a estratégia gulosa proposta nas 
afirmativas funciona e verifique ela conduz a uma solução ótima para se
qualquer valor informado. Além disso, a estratégia gulosa ordenar tarefas de as
por do tempo processamento, de menor para o maior, e executá-las nessa 
ordem conduz a uma solução ótima para qualquer entrada. fato, é preciso De
observar o problema exibe uma subestrutura local ótima: se executarmos que
a primeira tarefa uma solução ótima, obteremos uma solução ótima, em
executando tarefas restantes uma forma que minimize o tempo médio as de de
conclusão. 
••••• Pergunta 9 
1 em 1 pontos 
Algoritmos gulosos constituem uma poderosa ferramenta para a solução de problemas em um
tempo computacionalmente viável. entanto, dependendo características problema, No das do
estratégias gulosas não são capazes alcançar soluções ótimas. de Um exemplo é o problema de
devolver valor (troco) com o uso menor quantidade moedas possível.um da de 
 
Algoritmo Troco Moedasem 
Entrada: Um inteiro n e conjunto moedas c ) comum de (c1, c2, …, r 
c .1 > c > > c2 … r 
Saída: Conjunto moedas , d d ) tal e k é mínimode (d1 2, …, r que 
1. C ← ∅ 
2. paraparaparaparapara i = 1, …, r façafaçafaçafaçafaça 
3. n cenquantoenquantoenquantoenquantoenquanto ≥ i façafaçafaçafaçafaça 
4. C C { c }← ∪ i 
5. n n - c← i 
6. retorna retorna retorna retorna retorna C 
 
 
Considerando o algoritmo guloso apresentado para esse problema, analise afirmativas a as
seguir. 
 
I. A execução algoritmo com do os parâmetros (c1 = 20, c = 15, c = 2 3 7, c = 4 1) e n = 22 produz 
uma solução ótima. 
II. Para n = e 48 (c1 = 25, c = 10, c = 2 3 5, c = 1), nenhuma moeda c4 3 comporá a solução final. 
III. A complexidade O(n) algoritmo constitui o melhor desempenho conseguido para esse tipo do
de problema. 
IV. O algoritmo sempre obtém a solução ótima para o conjunto moeda de (c1 = 25, c = 10, c = 2 3 5, 
c4 = 1). 
 
Está correto o que se afirma em: 
 
Resposta Selecionada: 
II e IV. 
 
Impresso por davilinares.tlp, E-mail davilinares.tlp@gmail.com para uso pessoal e privado. Este material pode ser protegido por
direitos autorais e não pode ser reproduzido ou repassado para terceiros. 07/06/2023, 12:48:05
Resposta Correta: 
II e IV. 
Comentário 
da resposta: 
Resposta certa. Para entradas = c = c = c = e n = 22, o as (c1 20, 2 15, 3 7, 4 1)
algoritmo não produz a solução ótima, já que ele vai retornar o conjunto C = { c1, 
c4, c } 3 moedas, enquanto a solução ótima é C = { c , c } 2 moedas. 4 de 2 3 de
Para entradas n = as 48 e (c1 = 25, c = 10, c = c = 1), a solução produzi 2 3 5, 4 da
pelo algoritmo é C = { c , c , c , c , c , c } e contém a moeda c . Embora o 1 2 2 1 1 1 não 3
algoritmo tenha complexidade O(n), uma versão dele com desempenho O(1) 
pode ser obtida com seguintes operações:as 
• a1 = ⌊n/c1⌋ e n = n mod cq 1 
• a n2 = ⌊ q/c2⌋ e n = n mod cd q 2 
• a n3 = ⌊ d/c3⌋ e nk = nq 2 mod c 
• a4 = nk 
O conjunto final C será { a × d , a × d , a × d , a × d Finalmente, para o 1 1 2 2 3 3 4 4 }.
conjunto moedas = de (c1 25, c = 2 10, c = c3 5, 4 = o algoritmo sempre obtém a 1)
solução ótima. 
 
••••• Pergunta 10 
1 em 1 pontos 
Os problemas que precisam ser resolvidos computacionalmente podem ser classificados de 
acordo com a sua computabilidade. Essa classificação é importante, considerando que ela tem 
efeito direto sobre a viabilidade construção algoritmo útil cenários práticos.de de um em 
 
Considerando essas informações e conteúdos estudados, assinale a alternativa correta a os
respeito dessa classificação problemas.de 
 
Resposta 
Selecionada: 
 
A descoberta de um algoritmo polinomial para problema -completo um NP
pode tornar a igualdade P = verdadeira.NP 
Resposta Correta: 
A descoberta de um algoritmo polinomial para problema -completo um NP
pode tornar a igualdade P = verdadeira.NP 
Comentário da
resposta: 
Resposta certa. O problema encontrar uma rota ótima visitando pontos de
específicos uma única vez é uma aplicação problema Caixeiro Viajante, do do
que é da classe NP. Problemas da classe -difícil satisfazem apenas uma NP
condição problemas classe (problemas -completo satisfazem dos da NP NP às
duas ou condições e são -difíceis), NP seja, se algoritmo polinomial for um
encontrado para ele, então todos problemas poderão ser reduzidos a os NP
esse problema, o possibilitará que estes sejam resolvidos tempo que em
polinomial.

Continue navegando