sexta-feira, 20 de maio de 2016

[OBI2012] Consecutivos

Certamente a questão Consecutivos foi a mais complicada da primeira fase da OBI 2012, apesar de também não exigir nenhum conteúdo mais avançado. Para resolvê-la basta saber trabalhar bem com as estruturas de repetição.

Na minha solução usei a variável $seqMaior$ para guardar a pontuação da maior sequência e $seqAtual$ para guardar a pontuação da sequência atual que inicia com o valor $1$, uma vez que não existe uma sequência de $0$ termos. A cada laço do for há uma verificação: se o número lido for igual ao lido anteriormente a pontuação da sequência é incrementada em 1, caso contrário a sequência que estava sendo contada acaba, mas antes de reinicializá-la com $1$ precisamos verificar se ela é a maior até agora para atualizar a variável $seqMaior$. Observe que esta verificação não é feita para o primeiro número lido($i = 0$).

Código em C++

0 comentários:

Postar um comentário