Tarefas

Tarefa 0 - Primeiros passos

Você deve aprender a utilizar um terminal de comandos, realizar operações básicas no controle de versão Git, compilar e testar um programa em C e submeter uma tarefa na disciplina. Esta tarefa serve para testar o sistema de submissão e não fará parte da média de notas.

Tarefa 1 - Rearranjo de páginas

Você irá realizar operações em sequências de números que representam as páginas de um documento. Para isso, precisará armazenar dados em vetores e criar funções que manipulam esses dados.

Tarefa 2 - Imposto de Renda

Você deverá utilizar matrizes para calcular o ajuste imposto de renda de um conjunto de pessoas. Para isso, deverá ler, mostrar e operar sobre os valores de uma matriz.

Tarefa 3 - Homônimos e parentes

Você buscará nomes de estudantes homônimos e parentes em uma turma. Para isso, você deve ler, armazenar, organizar e manipular strings.

Tarefa 4 - Planejamento de viagem

Você está planejando uma viagem e precisa descobrir os voos mais baratos num horizonte próximo. Para isso, deverá escolher como representar e abstrair as operações em uma coleção de voos e dados associados.

Tarefa 5 - Ribossomo alienígena

Nesta tarefa, você fará a transcrição de sequências genéticas. Será necessário alocar vetores dinâmicamente e manipular registros.

Tarefa 6 - Minecraft

Você realizará operações em mapas de minecraft criados a partir de uma seed. Para isso, precisará alocar matrizes dinamicamente, armazenar dados nessas matrizes e manipulá-las através da passagem por referência para funções.

Tarefa 7 - Arranha-Céu

Você resolverá o quebra-cabeça do arranha-céu, para o qual terá que implementar uma solução baseada na estratégia de backtracking e recursão.

Tarefa 8 - Fila à Brasileira

Você deverá realizar operações em uma fila, implementada como lista ligada.

Tarefa 9 - Seleção de equipes

Para concluir esta tarefa, você deve ser capaz de implementar listas circulares duplamente ligadas.

Tarefa 10 - Navios e docas

Você irá simular o fluxo de navios de um porto. Para isso, você deve aplicar os tipos abstratos de dados pilha e fila.

Tarefa 11 - Esquema de pirâmide

Você simulará um esquema de pirâmide. Para representar os participantes do esquema, será necessário implementar uma árvore binária.

Tarefa 12 - Busca de preço

Você implementará um sistema de busca de preço online. Será necessário implementar uma árvore binária de busca.

Tarefa 13 - Ataque DDOS

Você implementará um sistema de detecção de ataques DDOS. Será necessário implementar uma árvore binária de busca balanceada.

Tarefa 14 - Fila de roteador

Você deve implementar uma fila de prioridade para balancear tráfego de um roteador.

Tarefa 15 - Nuvem de palavras

Você deve selecionar elementos para uma nuvem de palavras. Será necessário implementar uma tabela hash.

Tarefa 16 - Mapas de RPG

Você deve auxiliar na preparação de uma partida de RPG. Será necessário abstrair e representar o universo do jogo como um grafo.

Tarefa 17 - Definindo capitais

Você definirá a capital de um estado. Para isso, será preciso estudar a organização viária das cidades, representadas por um grafo.