Generating Fast, Sorted Permutation
|
|
- João Leão Aires
- 6 Há anos
- Visualizações:
Transcrição
1 Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: Algoritmos e Programação Avançada Professores: Marco Antonio M. Carvalho Túlio Ângelo M. Toffolo Lista de Exercícios 07 Força Bruta, Permutações, Recursividade Instruções Todos os exercícios que envolvem programas devem ser resolvidos através de programas; Na solução dos exercícios, devem ser utilizados os conceitos listados no eçalho desta lista; Para cada exercício, deve ser criado um arquivo com nome Nome_ListaX_ExeY.c, em que Nome denota o nome do aluno, X denota o número da lista de exercícios e Y denota o número do exercício; Os códigos fonte deverão ser primeiramente submetidos ao Uva, e após serem aceitos, devem ser entregues através do Moodle, sem zipar; Códigos copiados ou tentativas de trapaça acarretam em perda total da lista de exercícios; Eventuais dúvidas podem ser sanadas com o professor; A data da entrega é até o início da próxima aula prática. ID:10098 Generating Fast, Sorted Permutation Gerar permutações sempre foi um problema importante na ciência da computação. Neste problema, você terá que gerar a permutação de uma dada string em ordem crescente. Lembre que seu algoritmo deve ser eficiente. A primeira linha da entrada contém um inteiro n, que indica quantas strings seguem. As próximas n linhas contém n strings. As strings conterão apenas caracteres alfanuméricos e nunca conterão espaços. O maior comprimento de uma string é 10. Para cada string de entrada, escreva todas as permutações possíveis em ordem crescente. Note que as strings devem ser tratadas como case-sensitive e nenhuma permutação deve ser repetida. Uma linha em branco segue cada conjunto de saída. Exemplo de Exemplo de ab ba 3 ab
2 Knuth s Permutation ID: Existem algumas técnicas de geração de permutação no livro The Art of Computer Programming de Knuth. Um dos processos é como segue: Cada permutação A1, A2,... An-1 formam n outras permutações, através da inserção do caractere n em todas as posições possíveis, obtendo n A1 A2... An-1, A1 n A2... An-1,..., A1 A2... n An-1, A1 A2... An-1 n Por exemplo, a partir da permutação 231, inserindo 4 em todas as posições possíveis temos Seguindo esta regra, você tem que gerar todas as permutações de um dado conjunto de caracteres. Todos os caracteres serão diferentes e em número menor que 10, todos alfanuméricos. Este processo é recursivo e você terá que fazer a chamada inicial com o primeiro caractere e continuar a inserir caracteres em ordem. A entrada e saída de exemplos clarearão isto. Sua saída deve casar perfeitamente a entrada de exemplo. A entrada contém várias linhas. Cada linha será uma sequência de caracteres. Haverá menor que dez caracteres alfanuméricos em cada linha. A entrada terminará por EOF. Para cada linha da entrada, gere a permutação dos caracteres. A ordenação da entrada é muito importante para a saída. Isto quer dizer que as permutações e não são a mesma coisa. Separe cada conjunto de permutações por uma linha em branco. Exemplo de Exemplo de d d d d bcda d d d cbda acdb cadb cdab cdba abdc badc bdac bdca adbc
3 d d d adcb d d d
4 Perfect Cubes ID: 386 Por centenas de anos, o Último Teorema de Fermat, que dizia simplesmente que para n > 2 não existem inteiros a, b, c > 1 tais que a n = b n + c n, permaneceu não provado. (acredita-se que uma prova recente é correta, mas ainda continua sob escrutínio) [Nota: o teorema foi demonstrado corretamente em 1994] É possível, porém, encontrar inteiros maiores que 1 que satisfaçam a equação de Cubos Perfeitos a 3 = b 3 + c 3 + d 3 (e. g., um cálculo rápido mostra que a equação 12 3 = é verdadeira). Este problema exige que você escreva um problema que encontre todos os conjuntos de números (a, b, c, d) que satisfaçam a equação para a <=200. A saída deve ser listada como apresentado abaixo, um cubo perfeito por linha, em ordem não crescente de a (i. e., as linhas devem ser ordenadas por seus valores). Os valores de b, c e d devem também ser listados em ordem não crescente na linha. Existem diversos valores os quais podem ser produzidos a partir de distintos conjuntos de triplas b, c e d. Nestes casos, as triplas com o menor valor de b devem ser listadas primeiro. A primeira parte da saída é mostrada aqui: Cube = 6, Triple = (3,4,5) Cube = 12, Triple = (6,8,10) Cube = 18, Triple = (2,12,16) Cube = 18, Triple = (9,12,15) Cube = 19, Triple = (3,10,18) Cube = 20, Triple = (7,14,17) Cube = 24, Triple = (12,16,20) Nota: O programador precisará se preocupar com eficiência. O limite de tempo oficial é de 2 minutos ou duas vezes o tempo gasto pela solução gerada pelo juiz, e é possível escrever uma solução para este problema que exceda este tempo.
5 Joseph ID: 305 O problema de Joseph é notoriamente conhecido. Para aqueles não familiares com o problema original: Entre n pessoas enumeradas 1, 2,..., n dispostas em um círculo, toda m-ésima pessoa será executada, poupando-se apenas a vida da última pessoa. Joseph foi uma pessoa esperta o suficiente para escolher a pessoa da última pessoa viva, logo, salvando sua própria vida para nos dar a notícia sobre o incidente. Por exemplo, quando n=6 e m=5, então as pessoas serão executadas na ordem 5, 4, 6, 2, 3 e o 1 será poupado. Suponha que existem k mocinhos e k vilões. No círculo, os primeiros k são os mocinhos e os últimos k são os vilões. Você tem que determinar o m mínimo tal que todos os vilões serão executados antes do primeiro mocinho. O arquivo de entrada consiste de linhas separadas contendo k. A última linha no arquivo de entrada contém 0. Você pode supor que 0 < k < 14. A saída consistirá de linhas separadas contendo o m correspondente ao k do arquivo de entrada. Exemplo de Exemplo de
6 Permalex ID: 153 Dada uma string, podemos permutar os caracteres individualmente para formar novas strings. Se pudermos impor uma ordem aos caracteres (digamos, ordem alfabética), então as strings por si próprias podem ser ordenadas e a qualquer permutação pode ser designada uma posição naquela ordenação. Por exemplo, a string a dá origem às 12 permutações distintas: a 1 a 5 a 9 a 2 a 6 caab 10 a 3 baac 7 a 11 a 4 a 8 a 12 Logo a string a pode ser caracterizada nesta sequência como 5. Escreva um programa que lerá uma string e determine sua posição na sequência ordenada das permutações de seus caracteres constituintes. Note que os números das permutações pode ser muito grande, porém, garantimos que nenhuma string terá posição maior que 2 31 = A entrada consistirá de uma série de linhas, cada uma contendo uma string. Cada string consistirá de até 30 letras minúsculas, não necessariamente distintas. O arquivo será terminado por uma linha contendo um único #. A saída consistirá de uma série de linhas, uma para cada linha da entrada. Cada linha consistirá da posição da string na sequência, justificada à direita em um campo de tamanho 10. Exemplo de Exemplo de aa #
7 2 the 9s ID: Um truque bem conhecido para saber se um inteiro N é múltiplo de 9 é computar a soma S de seus dígitos. Se S é um múltiplo de nove, então N também é. Este é um teste recursivo, e a profundidade da recursão necessária para obter a resposta sobre N é chamada de 9-degree de N. Seu trabalho é, dado um número positivo N, determinar se é um múlitplo de 9, e, se for, o seu 9-degree. A entrada é um arquivo tal que cada linha contém um número positivo. Uma linha contendo o número 0 é o final da entrada. Os números dados podem conter até 1000 dígitos. A saída do programa deve indicar, para cada número da entrada, se é um número múltiplo de 9 e caso seja, seu 9-degree. Veja o exemplo de saída para a formatação esperada da saída. Exemplo de Exemplo de is a multiple of 9 and has 9-degree 3. 9 is a multiple of 9 and has 9-degree is not a multiple of 9.
Aritmética de Alta Precisão
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC202 - Estruturas de Dados I Professores: Túlio A. Machado Toffolo
Leia maisLista de Exercícios 09
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: Algoritmos e Programação Avançada Professores: Marco Antonio M. Carvalho
Leia maisLista de Exercícios 12 Geometria
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: Algoritmos e Programação Avançada Professores: Marco Antonio M. Carvalho
Leia maisProbabilidade. Contagem
Probabilidade Contagem Problema da Contagem no Estudo da Probabilidade Conforme definição clássica, podemos determinar uma probabilidade calculando a relação entre o total de eventos de sucesso e o total
Leia maisBCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Toffolo 2011/1
BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Toffolo 2011/1 Na aula anterior Prova 2 Na aula de hoje Técnicas básicas de contagem; Tentativa e Erro; Recursividade.
Leia maisRecursividade, Tentativa e Erro
Recursividade, Tentativa e Erro Túlio Toffolo www.toffolo.com.br Marco Antônio Carvalho marco.opt@gmail.com BCC402 Aula 07 Algoritmos e Programação Avançada Na aula anterior Prova 2 Na aula de hoje Técnicas
Leia maisLista de Exercícios 05 Strings
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: Algoritmos e Programação Avançada Professores: Marco Antonio M. Carvalho
Leia maisINE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA
INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA PARA A COMPUTAÇÃO PROF. DANIEL S. FREITAS UFSC - CTC - INE Prof. Daniel S. Freitas - UFSC/CTC/INE/2007 p.1/27 4 - INTROD. À ANÁLISE COMBINATÓRIA 4.1) Arranjos
Leia maisBCC202 - Estrutura de Dados I
BCC202 - Estrutura de Dados I Aula 15: Ordenação: ShellSort Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Computação, DECOM Website: www.decom.ufop.br/reifortes Email: reifortes@iceb.ufop.br
Leia maisTrabalho Prático 1. Valor: 1,0 pontos (10% da nota total) Data de Entrega: 02/05/2010
Universidade Federal de Ouro Preto Instituto de Ciências Exatas e Biológicas Programa de Pós-Graduação em Ciência da Computação Projeto e Análise de Algoritmos - 1 o semestre de 2010 Professor: David Menotti
Leia maisRosane Minghim e Guilherme P. Telles
Introdução à Computação Rosane Minghim e Guilherme P. Telles 9 de Agosto de 2012 Capítulo 7 Recursão 7.1 Considerações Iniciais A Recursão é uma característica, comum em matemática, de definir elementos
Leia maisLista de Exercícios 3
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC201 Introdução a Programação Professores: Túlio A. M. Toffolo e Puca
Leia maisLista 1 - PMR2300. Fabio G. Cozman 3 de abril de 2013
Lista 1 - PMR2300 Fabio G. Cozman 3 de abril de 2013 1. Qual String é impressa pelo programa: p u b l i c c l a s s What { p u b l i c s t a t i c void f ( i n t x ) { x = 2 ; p u b l i c s t a t i c void
Leia maisINE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA
INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA PARA A COMPUTAÇÃO PROF. DANIEL S. FREITAS UFSC - CTC - INE Prof. Daniel S. Freitas - UFSC/CTC/INE/2007 p.1/30 3 - INDUÇÃO E RECURSÃO 3.1) Indução Matemática 3.2)
Leia maisBCC402 Algoritmos e Programação Avançada. Prof. Marco Antonio M. Carvalho Prof. Túlio Toffolo 2012/1
BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Toffolo 2012/1 2 2 aulas teóricas e 2 aulas práticas (ambas em laboratório) Terças às 17:10, lab 22 do DECOM Prof. Túlio
Leia maisBCC201 Introdução à Programação ( ) Prof. Reinaldo Silva Fortes. Prática 04 Estruturas de Dados Homogêneas Vetores
Professor David Menotti (menottid@gmail.com) BCC0 Introdução à Programação (0-0) Prof. Reinaldo Silva Fortes Prática 0 Estruturas de Dados Homogêneas Vetores ) Escreva um programa que armazene em um vetor
Leia maisDivisão e Conquista. Dado um conjunto de pontos no espaço bidimensional, você deve encontrar a distância entre os dois pontos mais próximos.
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC202 - Estruturas de Dados I Professores: Túlio A. Machado Toffolo
Leia maisLista de Exercícios 2
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC201 Introdução a Programação Professores: Túlio A. M. Toffolo e Puca
Leia maisOs métodos de ordenação que ordenam os elementos in situ podem ser classificados em três principais categorias:
ORDENAÇÃO A atividade de ordenação é o processo de rearranjo de um certo conjunto de objetos de acordo com um critério (ordem) específico. O objetivo da ordenação é facilitar a localização dos membros
Leia mais10 opções. 10 opções. 9 opções. 22 opções. 23 opções
Contagem Princípio Fundamental de Contagem Se algum procedimento pode ser realizado de n 1 maneiras diferentes; se, seguindo este, um segundo procedimento pode ser realizado de n 2 maneiras diferentes;
Leia maisMC102 Aula 27 Recursão II
MC102 Aula 27 Recursão II Instituto de Computação Unicamp 17 de Novembro de 2016 Roteiro 1 Recursão Relembrando 2 Cálculo de Potências 3 Torres de Hanoi 4 Recursão e Backtracking 5 Exercício (Instituto
Leia maisLista sobre Estruturas de Dados
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC202 - Estruturas de Dados I Professores: Túlio A. Machado Toffolo
Leia maisLista sobre Estruturas de Dados
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC202 - Estruturas de Dados I Professores: Túlio A. Machado Toffolo
Leia maisProbabilidade I. Departamento de Estatística. Universidade Federal da Paraíba. Prof. Tarciana Liberal (UFPB) Aula 3 04/14 1 / 20
Probabilidade I Departamento de Estatística Universidade Federal da Paraíba Prof. Tarciana Liberal (UFPB) Aula 3 04/14 1 / 20 Alguns Conceitos Básicos de Contagem As ideias de contagem se relacionam com
Leia maisCI218 - Trabalho - 2 o sem/2016
CI218 - Trabalho - 2 o sem/2016 Entrega: NOVO PRAZO DE ENTREGA: 25/11/2016 Objetivo: Fazer a normalização de uma relação na FNBC e na 3FN. Entrada: A entrada tem o seguinte formato: a primeira linha deve
Leia maisProbabilidade. Contagem
Probabilidade Contagem Problema da Contagem no Estudo da Probabilidade Conforme definição clássica, podemos determinar uma probabilidade calculando a relação entre o total de eventos de sucesso e o total
Leia maisBacktracking. Pequenos Bispos
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC202 - Estruturas de Dados I Professores: Túlio A. Machado Toffolo
Leia maisRecursão. Aula 1. Liana Duenha. Faculdade de Computação Universidade Federal de Mato Grosso do Sul
Recursão Aula 1 Liana Duenha Faculdade de Computação Universidade Federal de Mato Grosso do Sul Algoritmos e Programação II, Análise de Sistemas, 2010 Martinez & Rubert (FACOM) Recursão APIIAS 1 / 25 Conteúdo
Leia maisEstruturas de Dados Tabelas de Espalhamento
Estruturas de Dados Tabelas de Espalhamento Prof. Eduardo Alchieri (introdução) Uma estrutura como, as árvores binárias de busca, que trabalhe na ordem de log n é muito eficiente, mas em algumas situações
Leia mais> Princípios de Contagem e Enumeração Computacional 1/13
Princípios de Contagem e Enumeração Computacional > Princípios de Contagem e Enumeração Computacional 1/13 Objetivos Contar/listar o número de elementos de conjuntos finitos Aplicações > Princípios de
Leia maisRecursividade. Objetivos do módulo. O que é recursividade
Recursividade Objetivos do módulo Discutir o conceito de recursividade Mostrar exemplos de situações onde recursividade é importante Discutir a diferença entre recursividade e iteração O que é recursividade
Leia maisINSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS. Aluno (s): 01 ATIVIDADE. Revisão de Conteúdo
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS DISCIPLINA: Lab. de Programação PROF: MSc. Flávio Barros PERÍODO: 2 DATA: Aluno (s): 01 ATIVIDADE / / Revisão de Conteúdo
Leia mais3ra. Avaliação - Grupo A
Universidade Federal de Ouro Preto - UFOP Disciplina: BCC 201 - Introdução à Programação Professor: Guillermo Cámara-Chávez Aluno: No. A cola não será tolerada. Se alguém for pego colando, será reprovado
Leia maisAlgoritmo e Programação Matemática
Algoritmo e Programação Matemática Fundamentos de Algoritmos Parte 1 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Dados A funcionalidade principal de um computador
Leia maisFaculdade de Computação
UNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Disciplina : Teoria da Computação - 1 0 Semestre 007 Professora : Sandra Aparecida de Amo Solução da Lista de Exercícios n o 1 Exercícios de Revisão
Leia maisINE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA
INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA PARA A COMPUTAÇÃO PROF. DANIEL S. FREITAS UFSC - CTC - INE Prof. Daniel S. Freitas - UFSC/CTC/INE/2007 p.1/18 4 - INTROD. À ANÁLISE COMBINATÓRIA 4.1) Arranjos
Leia maisESTRUTURAS DE REPETIÇÃO - PARTE 2
AULA 16 ESTRUTURAS DE REPETIÇÃO - PARTE 2 16.1 A seqüência de Fibonacci Um problema parecido, mas ligeiramente mais complicado do que o do cálculo do fatorial (veja as notas da Aula 14), é o do cálculo
Leia maisAlgoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição 1 Comando while Deseja-se calcular o valor de: 1 + 2 + 3 +... + N. Observação: não sabemos, a priori, quantos termos
Leia maisÁrvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo
PMR2300 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó (exceto a
Leia maisBCC402 Algoritmos e Programação Avançada. Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Tóffolo 2011/1
BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Tóffolo 2011/1 Introdução ao Curso 2 Carga horária semanal 2 aulas teóricas e 2 aulas práticas (ambas em laboratório)
Leia maisFixação de conteúdo teórico
BCC701 Programação de Computadores (2019-01) Universidade Federal de Ouro Preto - MG Departamento de Computação - DECOM http://www.decom.ufop.br/bcc701 [Aula 12] Estruturas de Repetição (prática 2) Fixação
Leia maisQuarto Trabalho Prático. Este trabalho tem como objetivo indexar arquivos de dados usando um índice simples ou linear. Descrição de páginas de disco
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Algoritmos e Estruturas de Dados II docente Profa. Dra. Cristina Dutra de
Leia maisSexta Lista: Geração de Números Pseudo-Aleatórios e Método de Monte Carlo
Sexta Lista: Geração de Números Pseudo-Aleatórios e Método de Monte Carlo Antônio Carlos Roque da Silva Filho e Cristiano R. F. Granzotti 26 de junho de 2017 Os exercícios desta lista devem ser resolvidos
Leia maisAula prática 5. Funções Recursivas
Programação Funcional UFOP DECOM 2014.1 Aula prática 5 Funções Recursivas Resumo Definições recursivas são comuns na programação funcional. Nesta aula vamos aprender a definir funções recursivas. Sumário
Leia maisBCC202 - Estrutura de Dados I
BCC202 - Estrutura de Dados I Aula 12: Ordenação: Bubble, Selection e Insertion Sort Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Computação, DECOM Website: www.decom.ufop.br/reifortes
Leia maisAnálise Combinatória. Matemática Discreta. Prof Marcelo Maraschin de Souza
Análise Combinatória Matemática Discreta Prof Marcelo Maraschin de Souza Introdução Combinatória é o ramo da matemática que trata de contagem. Esses problema são importantes quando temos recursos finitos,
Leia maisÁrvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo
PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó
Leia maisLista de Exercícios 5
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC201 Introdução a Programação Professores: Túlio A. M. Toffolo e Puca
Leia maisTécnicas de análise de algoritmos
CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS Técnicas de análise de algoritmos Algoritmos e Estruturas de Dados I Natália Batista https://sites.google.com/site/nataliacefetmg/ nataliabatista@decom.cefetmg.br
Leia maisOrdenação Externa. Ordenação Externa. Ordenação Externa. Ordenação Externa
Ordenação Externa Ordenação Externa Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação
Leia maisVictor Hugo Andrade Soares monitor João Vitor dos Santos Tristão Primeiro Trabalho Prático
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Algoritmos e Estruturas de Dados II docente Profa. Dra. Cristina Dutra de
Leia maisCIC 111 Análise e Projeto de Algoritmos II
CIC 111 Análise e Projeto de Algoritmos II Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 27 Square root algorithms Combining algorithms Integer partitions Mo s algorithm Square
Leia mais08/05/2012. Tipos de dados. Tipos de dados. Elementos Básicos. Tipos de dados. Elementos Básicos Tipos de dados. Dados e seus tipos:
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DA PARAÍBA CAMPUS CAMPINA GRANDE 1 2 Elementos Básicos Tipos de dados Dados e seus tipos: Computadores lidam com diversos tipos de dados: numéricos,
Leia maisLista de Exercícios 04
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC202 - Estruturas de Dados I Professor: Túlio Toffolo (www.decom.ufop.br/toffolo)
Leia maisQuinto Trabalho Prático. Este trabalho tem como objetivo indexar arquivos de dados usando um índice árvore-b.
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Algoritmos e Estruturas de Dados II docente Profa. Dra. Cristina Dutra de
Leia maisSCC Capítulo 2 Recursão
SCC-501 - Capítulo 2 João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos http://www.icmc.usp.br/~joaoluis
Leia maisEstruturas de Repetição
Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números
Leia maisÁrvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo
PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó
Leia maisAula 15 - Estruturas de Repetição (p3)
BCC701- Programação de Computadores I Aula 15 - Estruturas de Repetição (p3) Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM http://www.decom.ufop.br/bcc701 BCC701-2019-01
Leia maisMC102 Aula 26. Instituto de Computação Unicamp. 17 de Novembro de 2016
MC102 Aula 26 Recursão Instituto de Computação Unicamp 17 de Novembro de 2016 Roteiro 1 Recursão Indução 2 Recursão 3 Fatorial 4 O que acontece na memória 5 Recursão Iteração 6 Soma em um Vetor 7 Números
Leia maisCIC 111 Análise e Projeto de Algoritmos II
CIC 111 Análise e Projeto de Algoritmos II Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 22 Combinatorics Binomial coefficients Catalan numbers Inclusion-exclusion Burnside
Leia maisFicha 1 Noções de sequência e decisão em algoritmia
Ficha 1 Noções de sequência e decisão em algoritmia 1. Ler uma temperatura em Celsius e converter para Fahrenheit. Elabore o algoritmo e especifique as estruturas de dados necessárias para a resolução
Leia maisMatrizFormatador. Introdução
MatrizFormatador (versão preliminar) A planilha MatrizFormatador foi criada para gerar a entrada de dados da planilha MatrizConstrutor. A MatrizConstrutor formula problemas de planejamento florestal usando
Leia maisProgramação Universidade da Beira Interior Departamento de Informática 2007/08
Programação Universidade da Beira Interior Departamento de Informática 1. Faça o fluxograma e o respectivo programa que resolva equações de 2º grau (ax 2 +bx+c=0). O programa deverá pedir ao utilizador
Leia maisESTRUTURAS DE REPETIÇÃO - PARTE 3
AULA 17 ESTRUTURAS DE REPETIÇÃO - PARTE 3 17.1 O cálculo da média aritmética Considere o seguinte problema: dados um número inteiro positivo, n, e uma seqüência, x 1, x 2,..., x n, com n números reais,
Leia maisTabelas Hash. Prof. Túlio Toffolo BCC202 Aulas 23 e 24 Algoritmos e Estruturas de Dados I
Tabelas Hash Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aulas 23 e 24 Algoritmos e Estruturas de Dados I Pesquisa em Memória Primária Introdução - Conceitos Básicos Pesquisa Sequencial Pesquisa
Leia mais414 - Encontro das Superfícies 92,3%
44 - Encontro das Superfícies 92,3% Um dispositivo de aquisição de imagens provê imagens digitais de duas partes de superfície que eventualmente se juntarão ao entrar em contato uma com a outra. O momento
Leia maisAlgoritmos e Estrutura de Dados. Algoritmos Prof. Tiago A. E. Ferreira
Algoritmos e Estrutura de Dados Aula 3 Conceitos Básicos de Algoritmos Prof. Tiago A. E. Ferreira Definição de Algoritmo Informalmente... Um Algoritmo é qualquer procedimento computacional bem definido
Leia maisAlgoritmos e Estruturas de Dados II. Trabalho Prático 3
Algoritmos e Estruturas de Dados II Trabalho Prático 3 Entrega: 03/11/09 Devolução: 24/11/09 O trabalho pode ser feito em grupo de dois alunos. Este trabalho consiste em analisar o desempenho de diferentes
Leia maisComandos de repetição while
Programação de Computadores I UFOP DECOM 2013 2 Aula prática 6 Comandos de repetição while Resumo Nesta aula vamos trabalhar com problemas cuja solução envolve realizar um cálculo ou tarefa repetidas vezes,
Leia maisRecursividade UFOP 1/48
BCC 201 - Introdução à Programação I Recursividade Guillermo Cámara-Chávez UFOP 1/48 Introdução I Recursividade: é um método de programação no qual uma função pode chamar a si mesma Muitas estruturas têm
Leia maisProgramas Interativos
Programação Funcional DECOM UFOP 2012-1 Aula prática Capítulo 8 Prof. José Romildo Malaquias Programas Interativos Resumo Nesta aula pretende-se explorar construção de programas interativos usando ações
Leia maisAulas 10 e 11 / 18 e 20 de abril
1 Conjuntos Aulas 10 e 11 / 18 e 20 de abril Um conjunto é uma coleção de objetos. Estes objetos são chamados de elementos do conjunto. A única restrição é que em geral um mesmo elemento não pode contar
Leia maisPLANO DE DISCIPLINA DISCIPLINA: Algoritmos e Programação
UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE COMPUTAÇÃO BACHARELADO EM GESTÃO DA INFORMAÇÃO PLANO DE DISCIPLINA DISCIPLINA: Algoritmos e Programação ( X ) SEMESTRAL - ( ) ANUAL CÓDIGO: GGI026 PERÍODO:
Leia maisAlgoritmos e Programação. AULA 21: Recursividade UNIVERSIDADE FEDERAL DE PELOTAS CENTRO DE DESENVOLVIMENTO TECNOLÓGICO CIÊNCIA DA COMPUTAÇÃO
1 Algoritmos e Programação AULA 21: Recursividade UNIVERSIDADE FEDERAL DE PELOTAS CENTRO DE DESENVOLVIMENTO TECNOLÓGICO CIÊNCIA DA COMPUTAÇÃO 2 Recursividade A recursão é o processo pelo qual passa um
Leia maisDCC001 - Programação de Computadores. Lista de Exercícios 02 - Estruturas de Dados Homogêneas (Vetores).
DCC-UFMG 1 semestre de 2007 DCC001 - Programação de Computadores Prof. Martín Gómez Ravetti Lista de Exercícios 02 - Estruturas de Dados Homogêneas (Vetores). Valor: 5 pontos 1. Escreva um algoritmo em
Leia mais04 Recursão SCC201/501 - Introdução à Ciência de Computação II
04 Recursão SCC201/501 - Introdução à Ciência de Computação II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2010/2 Moacir Ponti Jr. (ICMCUSP) 04Recursão
Leia maisAlgoritmos de ordenação: Inserção e Shellsort
CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS Algoritmos de ordenação: Inserção e Shellsort Algoritmos e Estruturas de Dados I Slides adaptados dos slides do livro texto (Ziviani) e dos slides
Leia maisBCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35
BCC 201 - Introdução à Programação Portugol Guillermo Cámara-Chávez UFOP 1/35 Introdução I Lógica A lógica é usada no dia a dia das pessoas que trabalham com computação para solucionar problemas de forma
Leia mais2. A figura a seguir ilustra várias relações binárias em Quais são funções? Dentre as que são funções, quais as sobrejetivas? E quais as injetivas?
Seção 4.3 Funções 199 Exercícios 4.3 1. A figura a seguir representa uma função. a. Qual seu domínio? Qual seu contradomínio? Qual o conjunto imagem? b. Qual a imagem de 5? E de 8? c. Quais as pré-imagens
Leia maisSegundo trabalho de Organização e Recuperação da Informação FACOM- UFU Professor: Wendel Melo
Segundo trabalho de Organização e Recuperação da Informação 2017-02 FACOM- UFU Professor: Wendel Melo Descrição O trabalho consiste na implementação de um programa que, a partir da construção do índice
Leia maisINE Fundamentos de Matemática Discreta para a Computação
INE5403 - Fundamentos de Matemática Discreta para a Computação ) Fundamentos.1) Conjuntos e Sub-conjuntos.) Números Inteiros.3) Funções.4) Seqüências e Somas.5) Crescimento de Funções Seqüências Uma seqüência
Leia maisSimulação de Caixa Automático
Programação Funcional UFOP DECOM 2014.1 Trabalho 1 Simulação de Caixa Automático Sumário Resumo Com esta atividade pretende-se explorar a construção de programas interativos usando ações de entrada e saída
Leia maisRealização: Apoio: Patrocínio:
Universidade Federal do Espírito Santo Departamento de Informática Programa de Educação Tutorial PET EngComp E-mail: petengcomp@inf.ufes.br Home-Page: www.inf.ufes.br/~pet Tel. (27) 3335-2161 Realização:
Leia mais1) Seja o conjunto A = (0;1). Quantas relações binárias distintas podem ser definidas sobre o conjunto A?
RESUMO A relação binária é uma relação entre dois elementos, sendo um conjunto de pares ordenados. As relações binárias são comuns em muitas áreas da matemática. Um par ordenado consiste de dois termos,
Leia maisACH5531 Introdução à Computação Cadeias de caracteres
ACH5531 Introdução à Computação Cadeias de caracteres Prof. Dr. Grzegorz Kowal grzegorz.kowal@usp.br https://sites.google.com/usp.br/ach5531 1 o sem 2019 sexta-feira, 14h00-15h45 CB, Bloco 3, 2 o andar,
Leia maisTrabalho de LP 15/07/2013. Prof. Flávio Miguel Varejão
15/07/2013 Trabalho de LP Prof. Flávio Miguel Varejão OBSERVAÇÃO IMPORTANTE: LEIA ATENTAMENTE TODA A ESPECIFICAÇÃO DO TRABALHO E INSTRUÇÕES DE SUBMISSÃO DE MODO A NÃO COMETER ENGANOS POR DESATENÇÃO E SER
Leia maisPrincípios de Contagem Introdução. Princípio Fundamental da Contagem
Aula n ọ 08 Princípios de ontagem Introdução A escolha do presente que você deseja ganhar em seu aniversário, a decisão de uma grande empresa quanto às alternativas de investimento neste ano e a seleção
Leia maisRequisitos para entrega. Projeto Programa 1 Cálculo de Médias Descrição do Projeto
FACULDADE DE TECNOLOGIA DE SÃO PAULO CURSO SUPERIOR DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROF. SÉRGIO LUIZ BANIN 1º SEMESTRE/2019 PROJETOS PROGRAMA 1, 2, 3, 4 E 5 Disciplina Data de Entrega das Soluções
Leia maisAula 05. Modularização Função Subrotina Recursividade
Logo Aula 05 Modularização Função Subrotina Recursividade 2 Modularização A modularização é um processo que aborda os aspectos da decomposição de algoritmos em módulos. Módulo é um grupo de comandos, constituindo
Leia maisLista de Exercícios 4
Introdução à Ciência da Computação - 1191 Lista de Exercícios Funções Frutíferas Observações: As listas de exercícios serão corrigidas por um corretor automático, portanto é necessário que as entradas
Leia maisCIC 110 Análise e Projeto de Algoritmos I
CIC 110 Análise e Projeto de Algoritmos I Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá Algoritmos Gulosos AULA 06 Algoritmos Gulosos Um algoritmo guloso constrói uma solução para
Leia maisBCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Toffolo 2011/1
BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Toffolo 2011/1 Na aula anterior Prova. 2 Na aula de hoje Geometria. 3 A geometria é inerentemente uma disciplina
Leia maisExercícios: Recursão
Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Recursão 1. Faça uma função recursiva que calcule e retorne o fatorial
Leia maisAula 20: Matrizes (Parte 2)
Aula 20: Matrizes (Parte 2) Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2018/2 Departamento de Computação UFOP Aulas anteriores Vetores Matrizes 2 / 15 Túlio Toffolo
Leia maisSeleção de Problemas:
2º Contest Noturno 18 de Julho 2013 Servidor CD MOJ: https://www.brunoribas.com.br/~moj/ Seleção de Problemas: Bruno Ribas 1 Estou com sorte! Problema: A Código Fonte: sorte.{c,cpp,pas,java} Google é um
Leia maisMaterial Didático Proposto
Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Comissão para Coordenação das Atividades Pedagógicas da Disciplina BCC701 CAP-BCC701 www.decom.ufop.br/bcc701 2014-1 Material
Leia maisProgramação Estruturada Comandos Condicionais (Decisão) Operadores Relacionais
Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Comissão para Coordenação das Atividades Pedagógicas da Disciplina BCC701 CAP-BCC701 www.decom.ufop.br/bcc701 2014-1 Material
Leia mais