Final - Olimpíadas Nacionais de Informática 2025
Bem-vindo à final das Olimpíadas Nacionais de
Informática (5 de Maio de 2025).
- A prova terá a duração de 4 horas
- Serão disponibilizados 3 problemas (cada um com várias subtarefas)
- Os 8 primeiros da final apuram-se a próxima fase e terão depois acesso a um pequeno estágio de preparação (online), no final do qual será feita uma outra prova, que conjuntamente com a final, determina os 4 alunos que nos irão representar nas Olimpíadas Internacionais (IOI). Destes 8 primeiros sairão também os alunos que nos irão representar nas Olimpíadas Ibero-Americanas (OII) e nas Olimpíadas da Europa Ocidental (WEOI) (os moldes de seleção para as OII e as WEOI, bem como as datas do estágio e prova de seleção serão depois anunciadas e combinados com os 8 finalistas)
- Durante a prova terão acesso a feedback detalhado. Isto significa que poderão saber exatamente o número de pontos de cada submissão nos testes oficiais. Para além disso, se carregarem no resultado da submissão poderão ver o tipo de erros que tiveram.
- A pontuação de um problema será igual à máxima pontuação que uma submissão vossa obteve nesse mesmo problema
- Durante a final, apenas será possível saberem a vossa própria pontuação. Não irão conseguir visualizar as pontuações dos outros concorrentes.
- Não existe nenhuma restrição no número de submissões para além de uma limitação no intervalo de tempo entre duas submissões para o mesmo problema (para garantir que o Mooshak consegue avaliar em tempo útil):
- Entre as 0h00m e 2h30m, apenas poderão fazer uma submissão 5 minutos depois da última
- Entre as 2h30m e as 3h30m, apenas poderão fazer uma submissão 3 minutos depois da última
- Entre as 3h30m e as 4h00m, apenas poderão fazer uma submissão 1 minuto depois da última (sendo que neste período pode acontecer que não recebam antes da prova terminar o resultado da vossa submissão: devem continuar a trabalhar e nunca ficarem parados à espera do resultado de uma submissão)
- Não podem usar no vosso código nenhuma diretiva que modifique as opções do compilador (ex: #pragma).
-
Se forem utilizadores de Java, notem que a
classe
Scanner
(para leitura de dados) é pouco
eficiente. Como tal, disponibilizamos a
classe FastScanner
, cujo código está disponível
aqui. Podem
usar esta classe como usariam a classe Scanner
e
não têm de incluir o seu código na vossa submissão, o nosso
compilador de java já inclui essa classe.
Se tiverem perguntas por favor utilizem o sistema de perguntas
do Mooshak. Não coloquem qualquer tipo de código ou
qualquer sugestão de solução, a vossa pergunta será
vista por todos os concorrentes. Se não obedecerem a esta regra
podem ser desqualificados.
Informação técnica
Linguagens de programação
Linguagem |
Compilador |
Versão |
Comando de compilação |
Extensão |
C |
gcc |
8.5.0 |
gcc -Wall -lm |
.c |
C++ |
gcc |
8.5.0 |
g++ -Wall -std=c++2a |
.cpp |
Java |
Java (TM) SE Runtime Environment |
1.8 |
javac |
.java |
Python |
CPython |
3.6.8 |
python3 prog.py |
.py |
Limites de tempo e memória
- Limite de memória global: 256MB
- Limite de memória de stack: 256MB
- Limite de tamanho de código fonte: 32KB
Problema A |
Problema B |
Problema C |
2 segundos |
2 segundos |
2 segundos |
Final Nacional das ONI'2025
Departamento de Ciência de Computadores
Faculdade de Ciências da Universidade do Porto
(5 de Maio de 2025)