Estruturas de Dados 2020/2021 (CC1007) - DCC/FCUP

Aula Prática #04 - Programação Estruturada
(semana de 08/03 a 12/03)


Exercícios para submissão

Para efeitos da nota atribuída à resolução de exercícios ao longo do semestre, os exercícios que pode submeter desta aula são:

Prazo de submissão: 27 de Março (submeter no Mooshak de EDados)

É encorajado que vão falando com os docentes e outros colegas se tiverem dificuldades. No entanto, qualquer ajuda mais direta que tenham recebido de outros colegas deve ser reconhecida nos comentário do programa que submetem.
Depois do prazo os problemas continuarão disponíveis no Mooshak, mas as submissões não contarão para a sua nota.
Cada aula vale 10% da nota desta componente. Como existem 12 aulas com submissões, pode ter pontuação máxima mesmo sem ter feito tudo.
Para um problema contar tem acertar todos os testes (ou seja, ter accepted). Mesmo que resolva todos os problemas, o máximo numa aula é de 100%.
Para ter 100% bastará sempre resolver os exercícios do guião principal.


Exercício 1) Jogo do Galo


Exercício 2) Jogo da Vida

O Jogo da Vida é talvez o mais conhecido autómato celular e foi criado para simular, através de regras simples e vai ser o tema do principal exercício desta aula prática. O objectivo é submeter com sucesso o problema [ED088] Jogo da Vida criando um código adequado e estruturado.


Exercício 3) Sopa de Letras

   

Neste exercício a ideia é fazer um problema de forma organizada e estruturada sem a nossa ajuda. O problema em questão é o [ED015] Sopa de Letras.


Exercícios extra para consolidação de conhecimentos


Exercício de Desafio

Para esta semana o desafio tem novamente a ver com a eficiência algorítmica. Deve tentar resolver o seguinte problema, que está disponível para submissão no Mooshak (o volume de Desafios):

Tal como o [ED245] Regras Quadriculadas, este é um problema da minha autoria que foi usado nas Olimpíadas e para ambos não é necessário nenhum tipo de estruturas de dados avançadas, mas antes é necessário ter um bom pensamento algorítmico. Não são de todo problemas triviais, mas por isso mesmo dão mais gozo fazer, não?

O limite de tempo de execução para cada caso de teste é de 3 segundos, pelo que a solução só será aceite e com pontuação máxima no Mooshak se for eficiente.

Para estes problemas de desafios não vou dar logo dicas, para vos deixar pensar, mas se quiserem mesmo resolver o problema e não estejam a conseguir (mesmo depois de terem realmente tentado), podem falar comigo para obter pistas, ou ter uma ideia de como os "atacar".