OBI 2021 - Fase 1 - Programação Nível Júnior
Para se preparar para a OBI, confira o nosso Roteiro de Estudos, nele você vai encontrar um direcionamento completo de como estudar!
Comentário por Anita Ramos, Lúcio Figueiredo e Leonardo Paes
Para conferir a prova na íntegra, clique aqui.
Idade de Camila
Conhecimento Prévio Necessário:
Em resumo, o problema pede como saída o segundo menor dentre três números dados. Para encontrar este número, basta analisar os seguintes três casos:
- Caso 1: e : Neste caso, é o segundo maior número.
- Caso 2: e : Neste caso, é o segundo maior número.
- Caso 3: Se nenhum dos casos acima são verdadeiros, então é o segundo maior número.
Para analisar estes três casos, podemos utilizar a estrutura condicional If/Else if/Else e o operador lógico and.
Complexidade: .
Plano de Internet
Conhecimento Prévio Necessário:
Para resolvermos o problema, basta utilizar um loop de até . Na iésima iteração, somamos em uma variável auxiliar que guarda os megabytes acumulados até o iésimo mês, chamada . Também devemos subtrair dessa mesma variável: A quantidade de megabytes gastos por João nesse mês. Por fim, somamos nela (referente ao mês ) e imprimimos essa variável.
Complexidade: . Segue o código, para melhor compreensão do problema:
Torneio de Tênis
Conhecimento Prévio Necessário:
Para esse problema, podemos utilizar a estrutura de repetição para realizar a leitura da entrada, ou seja, as letras e . Como o problema se trata de contar a quantidade de vitórias (caractere ) na entrada, cada vez que lermos a letra , somamos 1 à variável . Após realizar toda a leitura, basta checar à qual intervalo dado no enunciado para a divisão dos grupos a variável se encaixa e imprimir a resposta correspondente. Para isso usamos o comando que checa:
- Se , ou seja, o participante não será convidado a continuar o treinamento;
- Se ou , ou seja, o participante ficará no grupo 3;
- Se ou , ou seja, o participante ficará no grupo 2;
- Se ou , ou seja, o participante ficará no grupo 1;
Complexidade: . Segue o código para melhor compreensão do problema: