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: