URI Online Judge | 3161
As Frutas Esquecidas
Sheldon Cooper é um personagem excêntrico existente no universo de Hollywood. Recentemente ele sofreu um acidente e acabou esquecendo quais frutas gosta de comer. Contudo, é chegada a hora de preparar o café da manhã e Sheldon não quer passar pela experiência de provar uma fruta e descobrir que não gosta dela. Então, incomodado com essa situação, Sheldon convenceu seu amigo Leonard Hofstadter a lhe ajudar. Leonard lembra do momento que conheceu Sheldon e devido as excentricidades de seu amigo, ele guardou em seu computador uma lista com o nome das frutas que Sheldon gosta de comer. Leonard muito animado com sua sagacidade, abre o arquivo e observa que algo está errado: o conteúdo do arquivo foi embaralhado por um vírus de computador.
Determinado a resolve essa questão, Leonard fez experimentos e concluiu que é possível ler o conteúdo do arquivo e descobrir se Sheldon gosta ou não de uma dada fruta. Pelos experimentos, Leonard observou que o vírus fez alguma(s) das seguintes alterações: 1) Incluiu novos caracteres à esquerda e/ou à direita ao nome da fruta que estava na lista; 2) Alterou algumas letras, neste caso, algumas se tornaram maiúsculas e outras minúsculas; 3) O nome da fruta que estava na lista foi invertido ("Bergamota" => "Atomagreb"). Como Leonard estudou programação, ele irá criar um programa que recebe o nome de uma fruta e retorna se Sheldon gosta ou não dessa fruta.
Entrada
A primeira linha contém dois inteiros: 1) N que representa a quantidade de nomes de frutas que será verificado/procurado, limitado por [1,100]; 2) M que representa a quantidade de linhas da lista de nomes das frutas, limitado por [15,500]; Além disso, cada linha M da lista de nomes e cada linha N com o nome de fruta seguem o limite: [4,100].
Saída
Para cada nome de fruta procurado, informe: “Sheldon come a fruta X” ou “Sheldon detesta a fruta X” (onde X é nome da fruta que foi verificada na lista em lowercase).
Exemplo de Entrada
6 15
Jenipapo
Amora
Mangaba
acerola
Granadilla
Abacate
AjOsVtWhBqNxJpVuOnEuDiEuM
EtStCsamorAsWiWuLcPjGmDtW
JgFdPcLpLsAnaNabTlKoGpFjT
ImGmAnGABAKoAkXpTbGxLkIuG
KqSfThNwGjEgTjOvErPlMkNnH
XsAlUwGtMkANArAugoArGpEiL
ImKpClFqMoBwRuLxTnVpHsJpK
IbVhUfLaQvTrCPuPuNHAUwKxB
FfAcNiBjFbEwCjKxananAbGlO
SxObSvVsQnEpVhTwGvWgUcTxX
PtFfQfNlXlOgJqCbAeRxEqOwO
SqWpOpApiNEJLvXoViLfJfLtP
HnKfFbWkNlMgJrDxJfGtUnQbU
WmOeOgFwUfJhFtamOrarQhPfE
BaHwSeXhRhDdBdUnKoQeMnKdD
Exemplo de Saída
Sheldon come a fruta jenipapo
Sheldon come a fruta amora
Sheldon come a fruta mangaba
Sheldon detesta a fruta acerola
Sheldon detesta a fruta granadilla
Sheldon detesta a fruta abacate
Soluções para a tarefa
Resposta:
# -*- coding: utf-8 -*-
# Ler qtde_frutas e qtde_codificadas
entrada = input().split()
qtde_frutas = int(entrada[0])
qtde_codificadas = int(entrada[1])
# Criar vetor v_f de tamanho qtde_frutas
v_f = [""]*qtde_frutas
# Criar vetor v_c de tamanho qtde_codificadas
v_c = [""]*qtde_codificadas
# para i de 0 a qtde_frutas-1
for i in range(qtde_frutas):
# Ler fruta e colocar na posição v_f[i]
# Converter v_f[i] em minúsculas
v_f[i] = input().lower()
# para i de 0 a qtde_codificadas-1
for i in range(qtde_codificadas):
# Ler fruta codificada e colocar na posição v_c[i]
# Converter v_c[i] em minúsculas
v_c[i] = input().lower()
# para i em v_f
for i in v_f:
# Come = Falso
Come = False
# i_inv = inverso de i
i_inv = i[::-1] # i_inv = i[len(i)-1:-1:-1]
# para j em v_c
for j in v_c:
# se i está em j ou i_inv está em j
if (i in j) or (i_inv in j):
# então Come = Verdadeiro
# Sair deste para
Come = True
break
# se Come
if Come:
# então Mostrar "Sheldon come a fruta " i
print("Sheldon come a fruta", i)
else:
# senão Mostrar "Sheldon detesta a fruta " i
print("Sheldon detesta a fruta", i)