Seguem duas dúvidas sobre a Tarefa 1:
- A página de envio de soluções do UVa Judge Online oferece quatro opções de linguagem: C, C++, Pascal e Java. Alguma delas é obrigatória / recomendada / discriminada / proibida, ou fica a critério do aluno?
- A forma com que o problema é apresentado sugere, a princípio, uma implementação "inocente": executar uma variação da rotina exibida (que meça o tamanho do ciclo) para cada inteiro entre i e j, guardando o maior valor.
No entanto, há espaço para otimizações. Por exemplo: observando que qualquer número entre i e j que ocorra durante um ciclo não precisa ter seu próprio ciclo verificado (já que este é menor que o ciclo atual) podemos reduzir significativamente o número de ciclos a percorrer (à custa de espaço adicional para monitorar quais ciclos já foram descartados).
A pergunta é: devemos nos preocupar com este tipo de otimização, ou basta um programa que execute a tarefa em tempo finito, seja aprovado pelo sistema e atenda aos critérios de legibilidade mencionados no enunciado?