Você está na página 1de 5

OBI2012 Caderno de Tarefas

Modalidade Programao Nvel Jnior, Fase 1


14 de abril de 2012 A PROVA TEM DURAO DE 3 HORAS

Promoo:

Patrocnio:

v1.0

Olimpada Brasileira de Informtica OBI2012

Instrues
LEIA ATENTAMENTE ESTAS INSTRUES ANTES DE INICIAR A PROVA
Este caderno de tarefas composto por 4 pginas (no contando a folha de rosto), numeradas de 1 a 4. Verique se o caderno est completo. A prova deve ser feita individualmente. proibido consultar a Internet, livros, anotaes ou qualquer outro material durante a prova. permitida a consulta ao help do ambiente de programao se este estiver disponvel. As tarefas tm o mesmo valor na correo. A correo automatizada, portanto siga atentamente as exigncias da tarefa quanto ao formato da entrada e sada de seu programa. No implemente nenhum recurso grco nas suas solues (janelas, menus, etc.), nem utilize qualquer rotina para limpar a tela ou posicionar o cursor. As tarefas no esto ordenadas, neste caderno, por ordem de diculdade; procure resolver primeiro as questes mais fceis. Preste muita ateno no nome dos arquivos fonte indicados nas tarefas. Solues na linguagem C devem ser arquivos com suxo .c; solues na linguagem C++ devem ser arquivos com suxo .cc ou .cpp; solues na linguagem Pascal devem ser arquivos com suxo .pas; solues na linguagem Java devem ser arquivos com suxo .java e a classe principal deve ter o mesmo nome do arquivo fonte; e solues na linguagem Python devem ser arquivos com suxo .py. Para problemas diferentes voc pode escolher trabalhar com linguagens diferentes, mas apenas uma soluo, em uma nica linguagem, deve ser submetida para cada problema. Ao nal da prova, para cada soluo que voc queira submeter para correo, copie o arquivo fonte para o seu diretrio de trabalho ou disquete, conforme especicado pelo seu professor. No utilize arquivos para entrada ou sada. Todos os dados devem ser lidos da entrada padro (normalmente o teclado) e escritos na sada padro (normalmente a tela). Utilize as funes padro para entrada e sada de dados: em Pascal: readln, read, writeln, write; em C: scanf, getchar, printf, putchar ; em C++: as mesmas de C ou os objetos cout e cin. em Java: qualquer classe ou funo padro, como por exemplo Scanner, BueredReader, BueredWriter e System.out.println em Python: read,readline,readlines,print,write Procure resolver o problema de maneira eciente. Na correo, ecincia tambm ser levada em conta. As solues sero testadas com outras entradas alm das apresentadas como exemplo nas tarefas.

Olimpada Brasileira de Informtica OBI2012

Campeonato
Nome do arquivo fonte: campeonato.c, campeonato.cpp, campeonato.pas, campeonato.java, ou campeonato.py Dois times, Cormengo e Flaminthians, participam de um campeonato de futebol, juntamente com outros times. Cada vitria conta trs pontos, cada empate um ponto. Fica melhor classicado no campeonato um time que tenha mais pontos. Em caso de empate no nmero de pontos, ca melhor classicado o time que tiver maior saldo de gols. Se o nmero de pontos e o saldo de gols forem os mesmos para os dois times ento os dois times esto empatados no campeonato. Dados os nmeros de vitrias e empates, e os saldos de gols dos dois times, sua tarefa determinar qual dos dois est melhor classicado, ou se eles esto empatados no campeonato.

Entrada
A entrada descrita em uma nica linha, que contm seis inteiros, separados por um espao em branco: Cv , Ce , Cs , Fv , Fe , Fs , que so, respectivamente, o nmero de vitrias do Cormengo, o nmero de empates do Cormengo, o saldo de gols do Cormengo, o nmero de vitrias do Flaminthians, o nmero de empates do Flaminthians e o saldo de gols do Flaminthians.

Sada
Seu programa deve imprimir uma nica linha. Se Cormengo melhor classicado que Flaminthians, a linha deve conter apenas a letra C; se Flaminthians melhor classicado que Cormengo, a linha deve conter apenas a letra F; e se os dois times esto empatados a linha deve conter apenas o caractere =.

Restries
0 Cv , Ce , Fv , Fe 100 1000 Cs , Fs 1000

Exemplos
Entrada 10 5 18 11 1 18 Sada C

Entrada 10 5 18 11 2 18

Sada =

Entrada 9 5 -1 10 2 10

Sada F

Olimpada Brasileira de Informtica OBI2012

Busca na Internet
Nome do arquivo fonte: busca.c, busca.cpp, busca.pas, busca.java, ou busca.py Joo fez uma pesquisa em seu site de busca predileto, e encontrou a resposta que estava procurando no terceiro link listado. Alm disso, ele viu, pelo site, que t pessoas j haviam clicado neste link antes. Joo havia lido anteriormente, tambm na Internet, que o nmero de pessoas que clicam no segundo link listado o dobro de nmero de pessoas que clicam no terceiro link listado. Nessa leitura, ele tambm descobriu que o nmero de pessoas que clicam no segundo link a metade do nmero de pessoas que clicam no primeiro link. Joo est intrigado para saber quantas pessoas clicaram no primeiro link da busca, e, como voc amigo dele, quer sua ajuda nesta tarefa.

Entrada
Cada caso de teste possui apenas um nmero, t, que representa o nmero de pessoas que clicaram no terceiro link da busca.

Sada
Para cada caso de teste imprima apenas uma linha, contendo apenas um inteiro, indicando quantas pessoas clicaram no primeiro link, nessa busca.

Restries
1 t 1000

Exemplos
Entrada 2 Sada 8

Entrada 25

Sada 100

Olimpada Brasileira de Informtica OBI2012

Desao do maior nmero


Nome do arquivo fonte: maior.c, maior.cpp, maior.pas, maior.java, ou maior.py Leonardo um garoto muito criativo. Ele adora criar desaos para seus colegas da escola. Seu ltimo desao o seguinte: diversos nmeros so ditos em voz alta, quando o nmero 0 (zero) dito ento o desao termina e seus colegas devem dizer imediatamente qual foi o maior nmero. Leonardo tem muita diculdade de vericar se a resposta dada pelos colegas correta ou no, pois a sequncia de nmeros costuma ser longa. Por este motivo, ele resolveu pedir sua ajuda. Sua tarefa escrever um programa que dada uma sequncia de nmeros inteiros positivos terminada por 0 (zero), imprime o maior nmero da sequncia.

Entrada
A entrada dada em uma nica linha contendo uma sequncia de nmeros inteiros positivos. O ltimo nmero da linha 0 (zero).

Sada
Seu programa deve imprimir o maior nmero dentre os nmeros da entrada.

Restries
1 tamanho da sequncia 100. 1 nmero da sequncia 1000.

Exemplos
Entrada 10 30 20 5 0 Sada 30

Entrada 99 1000 55 1 2 9 0

Sada 1000