573 A Lesma 90,7% Dia Altura Inicial Distância Percorrida Altura após Escalada 1 0' 3' 3' 2 2' 2.7' 4.7' 3 3.7' 2.4' 6.1'

Documentos relacionados
247 Círculos de Ligação

414 - Encontro das Superfícies 92,3%

544 Carga Pesada. Entrada. Saída

Essas fitas de DNA, localizadas no núcleo das células, se esticadas medem cerca de 2 metros de comprimento.

Programação de Computadores I 2016 Prof. Marcos UNESP/FEG/DMA

Após consultar o material de apoio, a bibliografia sugerida ou referências adicionais, responda às questões a seguir:

Corrida ao Banco. nome do arquivo/classe: banco.c, banco.cpp ou banco.java - tempo: 3 segundos

Backtracking. Pequenos Bispos

Olimpíada Brasileira de Informática OBI2008 Programação Nível Júnior Fase 2 1. Auto Estrada. Nome do arquivo fonte: auto.c, auto.cpp ou auto.

Olimpíada Brasileira de Informática OBI2008 Programação Nível Júnior Fase 2 1. Auto Estrada. Nome do arquivo fonte: auto.c, auto.cpp ou auto.

3) Faça um algoritmo para ler a base e a altura de um triângulo. Em seguida, escreva a área do mesmo. Obs.: Área = ( Base * Altura ) / 2

Compactação de Dados. Fonte de consulta: Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC. Seção 12.5 em diante.

Exercícios em Excel. Analise a planilha mostrada na figura abaixo e, a partir das informações apresentadas, responda às questões seguintes:

Caderno de Problemas

A Estrutura do DNA e o sistema de Dupla Hélice.

OPI Modalidade Programação. Fase 1

Aula 01 Microsoft Excel 2016

Projeto e Análise de Algoritmos

Ácidos nucleicos (DNA e RNA) e os genes

5. Expressões aritméticas

Treinamento para OBI Simulado 1

REVISÃO: Terceira Unidade Nutrição

DURAÇÃO DA PROVA: 2 horas

Lista de Exercícios 2 Condicionais

Transcrição da informação genética

TRABALHO FINAL 20 Pontos

Nucleotídeos, ácidos nucleicos e informação genética

PROBLEMA A TROCA DE CARTAS

Outlook Web App (OWA)

AJUDA DE NAVEGAÇÃO OFFICE2 CRM - CLIENTE

Caderno de Exercícios Aula 2 (Variáveis, Tipos e Comandos Básicos)

Assina Web S_Line Manual de Uso

Departamento de Informática PUC-Rio INF Estruturas de Dados Lista 2 Completa (Gerada em 8 de maio de 2006)

CLUBE DE BENEFÍCIOS ANAFECARD GUIA DO USUÁRIO

Realização: Apoio: Patrocínio:

SimplesSMS - Manual do Usuário

Elaine Cristina e Aline Heloisa

Algoritmos e Programação

CEFAPA Aplicação Informática

SGCD 2.0 Sistema Gerenciador de Conteúdo Dinâmico

Professor Luiz Henrique - Tarefa 06_07_08 e 09 RESUMO TEÓRICO - Fatorial

Assinale abaixo quais os processos que resultam na expressão das características individuais:

Lista de Exercícios 12 Geometria

Problema A Maior. Adaptado por Renata Paschoal URI Brasil Nome do arquivo fonte: maior.c, maior.cpp, maior.java

Fundamentos de Arquiteturas de Computadores. Representação de números inteiros em complemento a 2

MANUAL DE INSTRUÇÕES CLARO TORPEDO EQUIPE

Manual de Utilização. Atualização Versão 3.6. Este documento tem como objetivo explicar o funcionamento das novidades que compõem a versão 3.6.

Figura 1. Exemplo da estrutura de um nucleotídeo

Passo a passo para cadastro de estudantes pré-selecionados na plataforma AstroEducadores Seletivas para Olimpíadas Internacionais de Astronomia 2018

NOME: DATA DE NASCIMENTO: ESCOLA: PAÍS: NÚMERO/CÓDIGO:

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS. Aluno (s): 01 ATIVIDADE. Revisão de Conteúdo

Manipulando a base de dados

Questionário de revisão para AV1 de Informática Aplicada Valor 1,0 ponto - Deverá ser entregue no dia da prova.

Universidade Federal do ABC MCTA Programação Estruturada 2018.Q3

Não utilize caracteres acentuados ou especiais para nomes de pastas e arquivos.

Meu nome: Minha Professora: Minha Instituição:

CÉLULAS 2/14/2017 FACULDADE EDUCACIONAL DE MEDIANEIRA COMPOSIÇÃO MOLECULAR DAS CÉLULAS COMPOSIÇÃO QUÍMICA DAS CÉLULAS COMPOSIÇÃO MOLECULAR DAS CÉLULAS

Início Rápido: Downloads e chaves

Fixo (41) Vivo (41) Tim (41) Claro (41) OI (41) Sistema Descomplicado CNPJ

5ª Lista de Exercícios de Programação I

Orientações para a Utilização do Sistema de Cadastro

Utilizando o painel do operador

Ambiente Virtual de Aprendizagem

Manual de acesso aos sistemas. Diretoria de Educação a Distância

Maratona de Programação da SBC 2015

DNA: Replicação e Transcrição. Professora: MSc Monyke Lucena

Melhoramento da Qualidade das Informações dos Criminosos na UE

O que é Sistema de Mensagem?

SIE Módulo de Protocolo

Configurando os sistemas da linha 4U para impressão de cupom de venda (versão ou superior)

MANUAL. Localizador: Página: MN 016 SGI-INFRA- . Informação)

Ajuda do Usuário do Forcepoint Secure Messaging

COMPLEMENTO DE ORDEM DE FABRICAÇÃO

Aula 3 PROFESSOR TUTA

Prof. Sérgio Carvalho GENÉTICA E HEREDITARIEDADE

Introdução à Programação C

Manual Pedido Eletrônico Orgafarma

Ficha 1 Noções de sequência e decisão em algoritmia

Disciplina: Arquitetura de Computadores

CONFIGURAÇÃO DO SIGEP NO SISTEMA FUSION

Lista de Exercícios 4

De se nvo l ver métodos para investigar a relação entre variáveis

Conteúdo Como gerar os arquivos pelo WinMFD da Bematech?... 3 Como saber a data do arquivo?... 9 Como copiar os arquivos gerados para o PENDRIVE:...

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO

Passo a passo para utilizar o evista em celulares e tablets Android

Exercícios: Arquivos

CLUBE DE VANTAGENS FENACLUBE GUIA DO USUÁRIO

Seleção de Problemas:

MATRIZES - PARTE Mais exemplos Multiplicação de duas matrizes AULA 26

n! ( n 1)! 2!.( n 1)! n n ( n 1)!( n 1)! ! 102! 100! 20! 6! c) 20! 6! 20! 5! e) 20! 6! Gabarito: B

Lista de Exercícios ICC 1 Ponteiros

Exercícios TVC2 PARTE I:

Nivio Ziviani. Conjunto de transparências elaborado por Nivio Ziviani, Patrícia Correia e Fabiano C. Botelho

Apostila organizada por: Vanderlane Andrade Florindo Silvia Cristina Freitas Batista Carmem Lúcia Vieira Rodrigues Azevedo

MARATONA DE PROGRAMAÇÃO INTERNA UERJ 28/11/2009. Este caderno contém 9 páginas com a descrição de 8 problemas definidos a seguir:

SEGMENTAÇÃO COMPORTAMENTAL

CAU Controle de Acesso Unificado. Manual de Usuário

Linguagem C: Introdução

Transcrição:

573 A Lesma 90,7% Uma lesma está na base (fundo) de um poço e deseja escalá-lo até o topo. A lesma pode escalar 3 pés durante o dia, mas desliza um pé enquanto dorme. A lesma tem um fator de fadiga de 10%, significando que a cada dia consecutivo de escalada ela escala 10% x 3 = 0,3 pés a menos do que no dia anterior (os 10% são sempre calculados em relação à altura que ela consegue escalar no primeiro dia). Em que dia a lesma conseguirá escalar o poço? Por exemplo, quando a lesma conseguirá passar por um poço de 6 pés de altura? (um dia consiste de um período de sol mais o período da noite). Como pode ser visto na tabela a seguir, a lesma passa dos 6 pés durante o terceiro dia. Dia Altura Inicial Distância Percorrida Altura após Escalada 1 0' 3' 3' 2 2' 2.7' 4.7' 3 3.7' 2.4' 6.1' Seu trabalho é resolver o problema geral de escalada da lesma. Dependendo dos parâmetros, a lesma conseguirá escalar o poço ou irá, eventualmente, escorregar até a base do poço. Isto é, a altura atingida pela lesma irá superar a altura do poço ou irá cair até ficar negativa. Você deverá identificar o que ocorrerá primeiro e em que dia. A entrada consistirá de um ou mais casos de teste. Cada caso em uma linha. Cada linha conterá quatro inteiros H, U, D e F, separados por um único espaço em branco. A entrada será encerrada com H recebendo o valor zero. Caso contrário, todos os números receberão valores entre 1 e 100. H é a altura do poço em pés, U é a distância em pés que a lesma consegue escalar durante o dia, D é a distância em pés que a lesma escorrega durante a noite, e F é o fator de fadiga expresso em porcentagem. A lesma nunca escala uma distância negativa. Se o fator de fadiga levar a distância escalada para um valor negativo então a lesma não escalará nada durante o dia. Independente do quanto a lesma escale em um dado dia, ela sempre escorregará D pés durante a noite. Para cada caso de teste, imprima uma linha indicando se a lesma conseguiu deixar o poço ou falhou (escorregou de volta para o fundo) e em que dia isso aconteceu. O formato deve ser idêntico ao dos exemplos a seguir. Exemplo de 6 3 1 10 10 2 1 50 50 5 3 14 50 6 4 1 50 6 3 1 1 1 1 1 0 0 0 0 Exemplo de success on day 3 failure on day 4 failure on day 7 failure on day 68 success on day 20 failure on day 2

1174 - IP-TV 92,62% Um consórcio europeu de provedores de Internet gerencia um backbone de internet, com links diretos (conexões) entre um grande número de cidades europeias. Um link entre duas cidades é bidirecional. A transmissão de uma mensagem em um link tem um custo associado. Como é comum na Internet, é possível usar uma sequência (ilimitada) de links diretos para transmitir indiretamente dados entre qualquer par de cidades. Para possibilitar a transmissão em broadcast de programas de TV usando este backbone, é necessário enviar continuamente dados para todos os nós da rede. A fim de ajudar a minimizar os custos, é necessário selecionar os links da rede que serão usados para transmitir os dados. O conjunto de links selecionados deve ser conexo e incluir todos os nós na rede. Para auxiliar este consórcio a gerenciar sua rede, você foi chamado para criar um programa que compute o custo mínimo para transmitir dados para todas as cidades do backbone. Dado um conjunto de links de rede, compute o custo mínimo de transmissão para atingir todos os nós. A entrada consiste de múltiplos casos de teste, a primeira linha da entrada contém o número de casos de teste. Haverá uma linha em branco antes de cada caso de teste. A primeira linha de cada caso de teste contém um inteiro positivo M, menor ou igual a 2.000, indicando o número de cidades que têm conexão na rede. A segunda linha contém um inteiro N menor ou igual a 50.000, com o número de links. Cada uma das N linhas seguintes contém a representação de um link. Cada linha contém duas strings e um inteiro, separados por espaços em branco, B E C, sendo B e E o nome das cidades (com no máximo 8 caracteres cada) e C um inteiro positivo menor ou igual a 30, representando o custo de transmissão do link. Para cada caso de teste, a saída consistirá de uma linha contendo um inteiro com o custo mínimo de transmissão para se enviar dados para todas as cidades. Imprima uma linha em branco entre casos de teste (mas não após o último caso de teste). Exemplo de Exemplo de 1 8 4 5 lisbon london 6 lisbon paris 5 london paris 1 london berlin 2 paris berlin 10

1235 - Cadeado contra força bruta 91,88% Ultimamente, há um sério problema com os cofres da terra dos pandas: muitos cofres foram roubados! Os cofres estão usando antigas trancas de rolagem com combinações de 4 dígitos (você só precisa rolar os dígitos para cima ou para baixo até que os quatro casem com a chave/senha). Cada dígito é projetado para rolar de 0 a 9. Rolando o dígito 9 para cima fará aparecer o dígito 9, e rolar o dígito 0 para baixo fará aparecer o dígito 9. Já que só há 10.000 senhas possíveis (de 0000 a 9999), qualquer um pode tentar todas as combinações até que o cofre esteja destravado. O que está feito, está feito! Mas para atrasar ataques futuros, a agência de segurança panda (PSA) idealizou um novo cofre, com múltiplas chaves. Ao invés de usar apenas uma combinação como chave, a tranca agora pode ter até N chaves que precisam ser todas destravadas antes do cofre se abrir. Estas travas trabalham da seguinte maneira: Inicialmente os dígitos estão em 0000. Chaves podem ser destravadas em qualquer ordem, colocando todos os dígitos da trava de forma a casarem com a chave e pressionando o botão UNLOCK. Um botão mágico chamado JUMP pode mudar os dígitos para qualquer chave já destravada sem necessidade de se rolar os dígitos. O cofre será destravado se e somente se todas as chaves forem destravadas dentro da quantidade mínima de rolagens, excluindo aquelas causadas por JUMP (sim, está características é a mais legal). Se o número de rolagens exceder o limite, então os dígitos são reiniciados em 0000 e todas as chaves são trancadas novamente. Em outras palavras, o estado do cofre é ressetado e a tentativa de abertura falhou. PSA está bastante confiante que este novo sistema irá atrasar as tentativas de invasão, dando-lhe tempo suficiente para identificar e capturar os assaltantes. A fim de determinar o número mínimo de rolagens necessárias, PSA quer que você escreva um programa. Dadas todas as chaves, calcule o número mínimo de rolagens necessárias para abrir o cofre (lembre-se que ao se apertar o botão JUMP não há custo de rolagens). A primeira linha da entrada contém um número T, que corresponde ao número de casos de teste. Cada caso de teste começa com um inteiro N (1<=N<=500), correspondendo ao número de chaves, seguido (na mesma linha ou não) por N grupos de quatro dígitos numéricos (correspondendo às N chaves [que podem ter zeros a esquerda]).

Para cada caso de teste, imprima uma única linha contendo o número mínimo de rolagens necessárias para se destravar todas as chaves. Explicação do segundo caso de teste do exemplo: 0000 se transforma em 1111 com 4 rolagens; 1111 se transforma em 1155 com 8 rolagens; JUMP 1155 em 1111 não custa nada; 1111 se transforma em 5511 com 8 rolagens. Assim, o total de rolagens foi 20 = 4 + 8 + 8 Exemplo de 4 2 1155 2211 3 1111 1155 5511 3 1234 5678 9090 4 2145 0213 9113 8113 Exemplo de 16 20 26 17

1237 - Esperto o bastante? 92,60% A companhia Auto-mobile Charting & Manufacturing (ACM) é uma companhia especializada na fabricação de partes de automóveis. Sendo uma das líderes mundiais no setor, ACM certamente quer manter-se atualizada no mundo automobilístico. Em seu aniversário de 100 anos, ACM compilou uma enorme lista de variações de preços de todos os automóveis na história. ACM deseja desenvolver um programa que eles chamam de Automobile Expert System (AES). O programa recebe o preço P como entrada e procura por uma montadora para a qual P fica dentro da faixa L (menor preço) e H (maior preço) dos carros feitos por essa montadora. Se não houver exatamente uma montadora que satisfaça a consulta, seu programa deverá imprimir a saída "UNDETERMINED". Esse programa nem parece tão esperto, né? Você deverá desenvolver esse programa para ACM. A entrada começa com uma linha contendo um inteiro T (T<=10), correspondendo ao número de casos de teste. Cada caso de teste se inicia com o tamanho do banco de dados D (D <10000). Cada uma das D linhas seguintes contém M, L e H (0 < L < H < 1000000) que são os nomes das companhias (sem espaços em branco e com no máximo 20 caracteres), o preço do carro mais barato já fabricado pela companhia (L), e o preço do carro mais caro já fabricado pela companhia (H). Então haverá um número de consultas Q (Q<1000), seguidas por Q linhas contendo P (0 < P < 1000000), que é o preço utilizado na consulta. Para cada consulta você deverá imprimir uma linha contendo o nome da montadora ou da string "UNDETERMINED" se nenhuma montadora ou mais de uma montadora satisfizer a consulta. É necessário imprimir uma linha em branco entre casos de teste (mas não após o último). Exemplo de 1 4 HONDA 10000 45000 PEUGEOT 12000 44000 BMW 30000 75900 CHEVROLET 7000 37000 4 60000 7500 5000 10000 Exemplo de BMW CHEVROLET UNDETERMINED UNDETERMINED

1368 - Consenso de DNA 94,62% O DNA (ácido desoxirribonucleico) é uma molécula que contém as instruções genéticas. Ele é composto de quatro diferentes nucleotídeos, chamados Adenina, Timina, Guanina e Citosina, conforme mostrado na figura 1. Se representarmos um nucleotídeo por seu caractere inicial, uma sequência de DNA pode ser representada com uma longa string (uma sequência de caracteres) composta por quatro caracteres: A, T, G e C. Por exemplo, assuma que nós recebemos um pedaço de uma sequência DNA que é composta pelos seguintes nucleotídeos: "Thymine-Adenine-Adenine- Cytosine-Thymine-Guanine-Cytosine-Cytosine- Guanine-Adenine-Thymine" Nós podemos representar essa sequência com a string "TAACTGCCGAT". Um biólogo descobriu que o gene X comumente existe na sequência de DNA de cinco diferentes tipos de animais: cães, gatos, cavalos, vacas e macados. Ele também descobriu que as sequências de DNA do gene X são muito parecidas (ver figura 2). Cat: GCATATGGCTGTGCA Dog: GCAAATGGCTGTGCA Horse: GCTAATGGGTGTCCA Cow: GCAAATGGCTGTGCA Monkey: GCAAATCGGTGAGCA Figura 2. Sequências de DNA para o gene X de cinco organismos. Figura 1 O biólogo pensa que os seres humanos também podem ter o gene X e decidiu pesquisar pela sequência de DNA do gene X no DNA humano. No entanto, antes de procurar, ele deverá definir uma sequência representativa do gene X porque suas sequências não são exatamente as mesmas nos cinco animais. Ele decidiu usar a distância Hamming para definir a sequência representativa. A distância Hamming é o número de caracteres diferentes em cada posição de duas strings de mesmo tamanho. Por exemplo, considere as seguintes sequências: "AGCAT" e "GGAAT". A distância Hamming dessas duas strings é 2 porque os caracteres na 1 a e na 3 a posição dessas strings são diferentes. Usando a distância Hamming podemos definir a string representativa para um conjunto de múltiplas strings de tamanho igual. Dado um conjunto de strings S = s1,..., sm de

tamanho n, o erro de consenso entre a string y de tamanho n e o conjunto S é dado pela soma das distâncias Hamming entre y e cada uma das sequências em S. Se o erro de consenso entre y e S é o menor entre todas as strings de tamanho n, y é chamado de string consenso de S. Por exemplo, dadas as três strings "AGCAT", "AGACT" e "GGAAT" a string consenso é "AGAAT" porque a soma da distância Hamming entre "AGAAT" e as três strings é 3, e nenhuma outra string de tamanho 5 terá distância menor (neste caso, a string consenso é única, mas em geral poderá haver mais de uma sequência consenso). Nós usamos a sequência consenso como a sequência representativa de DNA. Por exemplo, a string consenso do gene X apresentado na figura 2 é "GCAAATGGCTGTGCA" e o erro de consenso é 7. A entrada consistirá de T casos de teste. O número de casos de teste T é dado na primeira linha de entrada. Cada caso de teste inicia com uma linha contendo dois inteiros m e n, separados por um espaço em branco. O inteiro m (4<=m<=50) representa o número de sequências de DNA e n (4<=n<=1000) representa o tamanho das sequências de DNA. Em cada uma das m linhas seguintes, cada uma das sequências de DNA será apresentada. Seu programa deverá imprimir para cada caso de teste duas linhas. Na primeira deverá imprimir a sequência consenso e na segunda o valor do erro de consenso. Se há mais de uma sequência consenso, imprima a lexicograficamente menor. Exemplo de 3 5 8 TATGATAC TAAGCTAC AAAGATCC TGAGATAC TAAGATGT 4 10 ACGTACGTAC CCGTACGTAG GCGTACGTAT TCGTACGTAA 6 10 ATGTTACCAT AAGTTACGAT AACAAAGCAA AAGTTACCTT AAGTTACCAA TACTTACCAA Exemplo de TAAGATAC 7 ACGTACGTAA 6 AAGTTACCAA 12

1583 - Gerador de Dígitos 95,31% Para um dado inteiro positivo N, a soma de dígitos de N é definida como a soma do valor N e de seus dígitos. Quando M é a soma de dígitos de N, dizemos que N é o gerador de M. Por exemplo, a soma de dígitos de 245 é 256 (= 245 + 2 + 4 + 5). Assim, 245 é o gerador de 256. Não é surpresa que alguns números não têm nenhum gerador e alguns têm mais de um gerador. Por exemplo, os geradores de 216 são 198 e 207. Escreva um programa que encontre o menor gerador de um dado inteiro. A entrada consiste de T casos de teste. O número de casos de teste T é dado na primeira linha da entrada. Cada caso de teste é apresentado em uma linha e contém um inteiro N (1<=N<=100000). Seu programa deverá imprimir uma linha para cada caso de teste. A linha deverá conter o menor gerador de N, para cada caso de teste. Se N não possui nenhum gerador, imprima 0 (zero). Exemplo de 3 216 121 2005 Exemplo de 198 0 1979