OBI2005 Caderno de Tarefas



Documentos relacionados
OBI2012 Caderno de Tarefas

OBI2010 Caderno de Tarefas

OBI2012 Caderno de Tarefas

OBI2010 Caderno de Tarefas

OBI2010 Caderno de Tarefas

OBI2009 Caderno de Tarefas

OBI2013 Caderno de Tarefas

OBI2014 Caderno de Tarefas

OBI2014 Caderno de Tarefas

OBI2013 Caderno de Tarefas

OBI2012 Caderno de Tarefas

Faculdade de Computação - UFMS

OBI2005. Caderno de Tarefas

RASTREAMENTO E LOCALIZAÇÃO DE VEÍCULOS

I OLIMPÍADA DE ALGORITMO IFSP SÃO CARLOS. Caderno de Tarefas. 19 de outubro de 2011

OBI OLIMPÍADA BRASILEIRA DE INFORMÁTICA CADERNO DE TAREFAS. SEGUNDA FASE 12/9/99 13:00 às 17:00

Q-Acadêmico. Módulo CIEE - Estágio. Revisão 01

MATEMÁTICA PARA VENCER. Apostilas complementares APOSTILA 09: PROVA CMBH SIMULADA. Pré-Curso.

Especificação do Trabalho Prático

P r o g r a m a ç ã o d e C o m p u t a d o r e s 1 o S e m P r o f. A n d r é A m a r a n t e L u i z L A B 5 tag %2d while printf PE1:

COLÉGIO MILITAR DE BELO HORIZONTE CONCURSO DE ADMISSÃO 2003 / 2004 PROVA DE MATEMÁTICA 5ª SÉRIE DO ENSINO FUNDAMENTAL IDENTIFICAÇÃO

1. Introdução. Avaliação de Usabilidade Página 1

Esse produto é um produto composto e tem subprodutos

AULA 1 AULA 2. Estudo dirigido para as três primeiras AULAS de LPI Professora ANITA MACIEL 1º ESTUDO DIRIGIDO

Assessoria Técnica de Tecnologia da Informação - ATTI. Projeto de Informatização da Secretaria Municipal de Saúde do Município de São Paulo

Conceitos básicos da linguagem C

Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva

Estrutura de Dados Básica

Lista de Exercícios Fluxograma, Estruturas de Sequência e Decisão Prof: Yuri Frota

Portal do Projeto Tempo de Ser

Maratona de Programação da SBC 2011

FGV-EAESP PROVA DE RACIOCÍNIO MATEMÁTICO CURSO DE GRADUAÇÃO AGOSTO/2004

SUPORTE TÉCNICO EBS. Envie-nos suas dúvidas e/ou sugestões para

TUTORIAL DE UTILIZAÇÃO GOOGLE MAP MAKER

Nome: Data. Prof: Manoel Amaurício. p p% de C é C. 100 exemplo 1: 14% = 0,14 20% = 0,2 2% = 0,02

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano

PROCESSO JUDICIAL ELETRÔNICO PJe

PRINCÍPIOS DE INFORMÁTICA PRÁTICA OBJETIVO 2. BASE TEÓRICA 3. SEQÜÊNCIA DA AULA. 3.1 Iniciando o PowerPoint

Trabalho Computacional

Manual do Cliente. Alu Tracker Monitoramento Veicular

TÉCNICAS DE PROGRAMAÇÃO

Perfil Chefe de Transporte

Trabalho 7 Fila de prioridade usando heap para simulação de atendimento

Manual de Relação de Pontos por Indicação

NOTA FISCAL DE SERVIÇO ELETRÔNICA (NFS-e) Manual de Utilização Envio de arquivos RPS. Versão 2.1

Sumário. 1. Propósito 1 2. Tabela de Ferragem 1 3. Criar Tabela de Ferragem 1 4. Conector de Ferragens 7

INTRODUÇÃO À ENGENHARIA

Conectar diferentes pesquisas na internet por um menu

Módulo Frações, o Primeiro Contato. 6 o ano/e.f.

Simulado Banco de Dados I Bimestre 1 Capítulo 1 Projeto Lógico de Banco de Dados

Formador: Carlos Maia

- Aulas 57, 58, 59 e 60 - Técnicas de programação. Funções

Microsoft Access INTRODUÇÃO. Sumário INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO. O que é Banco de Dados?

Capítulo 5: Aplicações da Derivada

Sistema de Reserva de Laboratório Trabalho Semestral Versão 1.0

Lista de Exercícios 3 Estruturas de Controle Profa Susana M Iglesias

Colégio de Aplicação. Universidade Federal do Rio de Janeiro. Admissão. 2ª série ensino médio. Matemática

OBI2017 Caderno de Tarefas

Apostilas OBJETIVA Atendente Comercial / Carteiro / Op. Triagem e Transbordo CORREIOS - Concurso Público º CADERNO. Índice

ALGORITMOS E FLUXOGRAMAS

16. O PRIMEIRO CARRO. O custo real de um carro financiado. Guia do Professor

Problemas de função do 1º grau

2º ano do Ensino Médio

8. Perguntas e Respostas

ÍNDICE. Tela de Configuração Dados de Etiqueta Configuração da Impressora Configuração do Papel Itens para Inserção...

NOME: Nº. ASSUNTO: Recuperação Final - 1a.lista de exercícios VALOR: 13,0 NOTA:

Matemática Aplicada. Qual é a altitude do centro do parque, ponto de encontro das diagonais, em relação ao nível do mar?

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento

1. A corrida de vetores numa folha de papel.

MANUAL DE UTILIZAÇÃO DO SISTEMA HERMES

Versão 8.2C-08. Domínio Atendimento

Especificação do Trabalho Prático

Ajustes para o sistema de web conferências Adobe Connect

UNIDADE 2: Sistema Operativo em Ambiente Gráfico

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word Sumário

MANUAL DE PROCEDIMENTOS QUANTO A UTILIZAÇÃO DO SUBSISTEMA DE CONTROLE DE EXPEDIÇÃO DE DOCUMENTOS/SGA

Guia de. Compras PARAGUAI. Dicas

Bom trabalho. Módulo Contabilidade Caixa e Contas Bancárias

O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Sistemas e está sujeito a alterações sem aviso prévio.

A 'BC' e, com uma régua, obteve estas medidas: = h = 3,6. Portanto a área do triângulo ABC vale = 7,56cm

Simulado Informática Concurso Correios - IDEAL INFO

Sistema Acadêmico da Universidade Estadual Vale do Acaraú Módulo Aluno

Protocolo de Instalação de Parcelas Terrestres

OBI2012 Caderno de Tarefas

OpenOffice Calc Aula 4

CENTRO UNIVERSITÁRIO DE ENSINO SUPERIOR DO AMAZONAS - CIESA CENTRO DE PROCESSAMENTO DE DADOS CPD MANUAL DE UTILIZAÇÃO DO MOODLE 2.

Manual de Utilizador. Caderno. Recursos da Unidade Curricular. Gabinete de Ensino à Distância do IPP.

7 - Análise de redes Pesquisa Operacional CAPÍTULO 7 ANÁLISE DE REDES. 4 c. Figura Exemplo de um grafo linear.

Apostila 1. (Make Directory AMY - Fazer pasta AMY) C:>CD AMY

DIRETRIZES PARA TRABALHO DE CONCLUSÃO DE CURSO PÓS-GRADUAÇÃO - CESCAGE

Conteúdo. Apostilas OBJETIVA - Ano X - Concurso Público 2015

MANUAL DE PROCEDIMENTOS ORÇAMENTOS

Para os demais formatos, o relatório será gerado mas virá com configurações incorretas.

GRADUAÇÃO FGV 2005 PROVA DISCURSIVA DE MATEMÁTICA

MANUAL DO OFICIAL DE JUSTIÇA

MINISTÉRIO DA EDUCAÇÃO COLÉGIO PEDRO II DIREÇÃO-GERAL DIRETORIA DE ENSINO EXAME DE SELEÇÃO E CLASSIFICAÇÃO DE CANDIDATOS

MANUAL DE INSTRUÇÕES DA TRENA DIGITAL MODELO TN-1070

Transcrição:

OBI2005 Caderno de Tarefas Modalidade Programação Nível 1 A PROVA TEM DURAÇÃO DE TRÊS HORAS LEIA ATENTAMENTE ESTAS INSTRUÇÕES ANTES DE INICIAR A PROVA Este caderno de tarefas é composto por 8 páginas (não contando esta folha de rosto), numeradas de 1 a 8. Verifique se o caderno está completo. A prova deve ser feita individualmente. É proibido consultar livros, anotações ou qualquer outro material durante a prova. É permitida a consulta ao help do ambiente de programação se este estiver disponível. As tarefas têm o mesmo valor na correção. A correção é automatizada, portanto siga atentamente as exigências da tarefa quanto ao formato da entrada e saída de seu programa. Não implemente nenhum recurso gráfico nas suas soluções (janelas, menus, etc.), nem utilize qualquer rotina para limpar a tela ou posicionar o cursor. As tarefas não estão ordenadas, neste caderno, por ordem de dificuldade; procure resolver primeiro as questões mais fáceis. Preste muita atenção no nome dos arquivos fonte indicados nas tarefas. Soluções na linguagem C devem ser arquivos com sufixo.c; soluções na linguagem C++ devem ser arquivos com sufixo.cc ou.cpp; soluções na linguagem Pascal devem ser arquivos com sufixo.pas. Para problemas diferentes você pode escolher trabalhar com linguagens diferentes, mas apenas uma solução, em uma única linguagem, deve ser submetida para cada problema. Ao final da prova, para cada solução que você queira submeter para correção, copie o arquivo fonte para o seu diretório de trabalho ou disquete, conforme especificado pelo seu professor. Não utilize arquivos para entrada ou saída. Todos os dados devem ser lidos da entrada padrão (normalmente é o teclado) e escritos na saída padrão (normalmente é a tela). Utilize as funções padrão para entrada e saída 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. Procure resolver o problema de maneira eficiente. Na correção, eficiência também será levada em conta. As soluções serão testadas com outras entradas além das apresentadas como exemplo nas tarefas. Sociedade Brasileira de Computação www.sbc.org.br

Olimpíada Brasileira de Informática OBI2005 Modalidade Programação Nível 1 1 Frota de Táxi Arquivo fonte: taxi.c, taxi.cc, taxi.cpp ou taxi.pas A Companhia de Táxi Tabajara (CTT) é uma das maiores empresas de transporte do país. Possui uma vasta frota de carros e opera em todas as grandes cidades. Recentemente a CTT modernizou a sua frota, adquirindo um lote de 500 carros bi-combustíveis (carros que podem utilizar como combustível tanto álcool quanto gasolina). Além do maior conforto para os passageiros e o menor gasto com manutenção, com os novos carros é possível uma redução adicional de custo: como o preço da gasolina está sujeito a variações muito bruscas e pode ser vantagem, em certos momentos, utilizar álcool como combustível. Entretanto, os carros possuem um melhor desempenho utilizando gasolina, ou seja, em geral, um carro percorre mais quilômetros por litro de gasolina do que por litro de álcool. Tarefa Você deve escrever um programa que, dados o preço do litro de álcool, o preço do litro de gasolina e os quilômetros por litro que um carro bi-combustível realiza com cada um desses combustíveis, determine se é mais econômico abastecer os carros da CTT com álcool ou com gasolina. No caso de não haver diferença de custo entre abastecer com álcool ou gasolina a CTT prefere utilizar gasolina. A entrada é composta por uma linha contendo quatro números reais com precisão de duas casas decimais A, G, R a e R g, representando respectivamente o preço por litro do álcool, o preço por litro da gasolina, o rendimento (km/l) do carro utilizando álcool e o rendimento (km/l) do carro utilizando gasolina. A entrada deve ser lida do dispositivo de entrada padrão (normalmente o teclado). A saída deve ser composta por uma única linha contendo o caractere A se é mais econômico abastecer a frota com álcool ou o caractere G se é mais econômico ou indiferente abastecer a frota com gasolina. A saída deve ser escrita no dispositivo de saída padrão (normalmente a tela). Restrições 0.01 A 10.00 0.01 G 10.00 0.01 R a 20.00 0.01 R g 20.00

Olimpíada Brasileira de Informática OBI2005 Modalidade Programação Nível 1 2 Exemplos de entrada e saída Exemplo 1 1.20 2.30 10.00 15.00 A Exemplo 2 1.00 1.00 9.00 9.01 G Exemplo 3 1.00 1.00 11.00 11.00 G

Olimpíada Brasileira de Informática OBI2005 Modalidade Programação Nível 1 3 Campo de Minhocas Arquivo fonte: minhoca.c, minhoca.cc, minhoca.cpp ou minhoca.pas Minhocas são muito importantes para a agricultura e como insumo para produção de ração animal. A Organização para Bioengenharia de Minhocas (OBM) é uma entidade não governamental que promove o aumento da produção, utilização e exportação de minhocas. Uma das atividades promovidas pela OBM é a manutenção de uma fazenda experimental para pesquisa de novas tecnologias de criação de minhocas. Na fazenda, a área destinada às pesquisas é de formato retangular, dividida em células quadrangulares de mesmo tamanho. As células são utilizadas para testar os efeitos, na produção de minhocas, de variações de espécies de minhocas, tipos de terra, de adubo, de tratamento, etc. Os pesquisadores da OBM mantêm um acompanhamento constante do desenvolvimento das minhocas em cada célula, e têm uma estimativa extremamente precisa da produtividade em cada uma das células. A figura abaixo mostra um mapa da fazenda, mostrando a produtividade estimada de cada uma das células. 81 28 240 10 40 10 100 240 20 180 110 35 Um pesquisador da OBM inventou e construiu uma máquina colhedeira de minhocas, e quer testála na fazenda. A máquina tem a largura de uma célula, e em uma passada pelo terreno de uma célula colhe todas as minhocas dessa célula, separando-as, limpando-as e empacotando-as. Ou seja, a máquina eliminará uma das etapas mais intensivas de mão de obra no processo de produção de minhocas. A máquina, porém, ainda está em desenvolvimento e tem uma restrição: não faz curvas, podendo movimentar-se somente em linha reta. Decidiu-se então que seria efetuado um teste com a máquina, de forma a colher o maior número possível de minhocas em uma única passada, em linha reta, de lado a lado do campo de minhocas. Ou seja, a máquina deve colher todas as minhocas de uma coluna ou de uma linha de células do campo de minhocas (a linha ou coluna cuja soma das produtividades esperadas das células é a maior possível). Tarefa Escreva um programa que, fornecido o mapa do campo de minhocas, descrevendo a produtividade estimada em cada célula, calcule o número esperado total de minhocas a serem colhidas pela máquina durante o teste, conforme descrito acima. A primeira linha da entrada contém dois números inteiros N e M, representando respectivamente o número de linhas (1 N 100) e o número de colunas (1 M 100) de células existentes no campo experimental de minhocas. Cada uma das N linhas seguintes contém M inteiros, representando as produtividades estimadas das células correspondentes a uma linha do campo de minhocas. A entrada deve ser lida do dispositivo de entrada padrão (normalmente o teclado).

Olimpíada Brasileira de Informática OBI2005 Modalidade Programação Nível 1 4 A saída deve ser composta por uma única linha contendo um inteiro, indicando o número esperado total de minhocas a serem colhidas pela máquina durante o teste. A saída deve ser escrita no dispositivo de saída padrão (normalmente a tela). Restrições 1 N 100 1 M 100 0 Produtividade de uma célula 500 0 Produtividade de uma linha ou coluna de células 50000 Exemplos de entrada e saída Exemplo 1 3 4 81 28 240 10 40 10 100 240 20 180 110 35 450 Exemplo 2 4 1 100 110 0 100 310

Olimpíada Brasileira de Informática OBI2005 Modalidade Programação Nível 1 5 Duende Perdido Arquivo fonte: duende.c, duende.cc, duende.cpp ou duende.pas Gugo, o duende, ficou preso em uma caverna e precisa sair o mais rapidamente possível. A caverna é formada por salões interligados por túneis, na forma de uma grade retangular, com N linhas e M colunas. Alguns dos salões da caverna têm paredes de cristal. Duendes, como todos sabem, não gostam de ficar em ambientes com qualquer tipo de cristal, pois seus organismos entram em ressonância com a estrutura de cristais, e em casos extremos os duendes podem até mesmo explodir. Compreensivelmente, Gugo não quer entrar em nenhum salão com parede de cristal. A figura abaixo mostra uma caverna com quatro linhas e cinco colunas de salões; os salões cinza têm paredes de cristal. A posição inicial de Gugo é indicada com um caractere *. Tarefa Você deve escrever um programa que, dadas a configuração da caverna e a posição inicial de Gugo dentro da caverna, calcule qual o número mínimo de salões pelos quais o duende deve passar antes de sair da caverna (não contando o salão em que o duende está inicialmente), mas contando o salão que tem saída para o exterior). A caverna será modelada como uma matriz de duas dimensões, cujos elementos representam os salões. Um salão que não tem parede de cristal e que tem saída para o exterior da caverna é representado pelo valor 0; um salão que não tem parede de cristal e não tem saída para o exterior é representado pelo valor 1; um salão que tem parede de cristal é representado pelo valor 2; e o salão em que o duende está inicialmente (que não tem saída para o exterior e nem paredes de cristal) é representado pelo valor 3. A figura abaixo mostra a representação da caverna apresentada acima. A primeira linha da entrada contém dois números inteiros N e M que indicam respectivamente o número de linhas (1 N 10) e o número de colunas (1 M 10) da representação da caverna. Cada uma das N linhas seguintes contém M números inteiros C i, descrevendo os salões da caverna e a posição inicial do duende (0 C i 3). Você pode supor que sempre há um trajeto que leva Gugo à saída da caverna. A entrada deve ser lida do dispositivo de entrada padrão (normalmente o teclado).

Olimpíada Brasileira de Informática OBI2005 Modalidade Programação Nível 1 6 Seu programa deve produzir uma única linha na saída, contendo um número inteiro representando a quantidade mínima de salões pelos quais Gugo deve passar antes de conseguir sair da caverna (não contando o salão em que ele está inicialmente, mas contando o salão que tem saída para o exterior). A saída deve ser escrita no dispositivo de saída padrão (normalmente a tela). Restrições 1 N 10 1 M 10 0 C i 3 Exemplos de entrada e saída Exemplo 1 4 5 0 1 1 1 1 0 2 2 2 1 2 1 1 1 1 1 1 1 3 1 8 Exemplo 2 1 10 2 0 1 1 3 1 1 1 0 1 3

Olimpíada Brasileira de Informática OBI2005 Modalidade Programação Nível 1 7 Trilhas Arquivo fonte: trilhas.c, trilhas.cc, trilhas.cpp ou trilhas.pas Nos finais de semana Paulo faz longas caminhadas pelas bonitas trilhas que atravessam as matas vizinhas à sua cidade. Recentemente Paulo adquiriu um aparelho de GPS (siglas do inglês Sistema de Posicionamento Global) e com ele mapeou as mais belas trilhas da região. Paulo programou o GPS para armazenar, a intervalos regulares, a altitude do ponto corrente durante o trajeto. Assim, após percorrer as trilhas com o seu GPS, Paulo tem informações que permitem por exemplo produzir gráficos como os abaixo: Paulo tem uma nova namorada, e quer convencê-la a passear junto com ele pelas trilhas. Para o primeiro passeio juntos, Paulo quer escolher uma trilha fácil. Segundo o seu critério, a trilha mais fácil é a que, em um dos sentidos do percurso, exige o menor esforço de subida. O esforço exigido em um trecho de subida é proporcional ao desnível do trecho. Tarefa Dadas as informações colhidas por Paulo sobre distâncias e altitudes de um conjunto de trilhas, você deve escrever um programa que determine qual é a trilha que exige o menor esforço de subida. A primeira linha da entrada contém um número inteiro N que indica o número de trilhas. Cada uma das N linhas seguintes contém a descrição de uma trilha (1 N 100). As trilhas são identificadas por números de 1 a N. A ordem em que as trilhas aparecem na entrada determina os seus identificadores (a primeira trilha é a de número 1, a segunda a de número 2, a última a de número N). A descrição de uma trilha inicia com um número inteiro M que indica a quantidade de pontos de medição da trilha (2 M 1000), seguido de M números inteiros H i representando a altura dos pontos da trilha (medidos a intervalos regulares e iguais para todas as linhas). Paulo pode percorrer a trilha em qualquer sentido (ou seja, partindo do ponto de altitude H 1 em direção ao ponto de altitude H M, ou partindo do ponto de altitude H M em direção ao ponto de altitude H 1 ). A entrada deve ser lida do dispositivo de entrada padrão (normalmente o teclado). Seu programa deve produzir uma única linha na saída, contendo um número inteiro representando o identificador da melhor trilha, conforme determinado pelo seu programa. Em caso de empate entre duas ou mais trilhas, imprima a de menor identificador. A saída deve ser escrita no dispositivo de saída padrão (normalmente a tela).

Olimpíada Brasileira de Informática OBI2005 Modalidade Programação Nível 1 8 Restrições 1 N 100 2 M 1000 0 H i 1000 Exemplos de entrada e saída Exemplo 1 5 4 498 500 498 498 10 60 60 70 70 70 70 80 90 90 100 5 200 190 180 170 160 2 1000 900 4 20 20 20 20 2 Exemplo 2 3 5 600 601 600 601 600 4 500 499 500 499 4 300 300 302 300 2