7-1: Ordenação de Caracteres ASCII
Dada uma sequência de caracteres, organize-os em ordem crescente com base em seus valores ASCII.
Formato de Entrada: Diversas linhas, cada uma contendo múltiplos caracteres.
Formato de Saída: Para cada linha de entrada, exiba os caracteres ordenados, separados por espaço.
Exemplo de Entrada:
Input1231
qwe1321
asddsfadsfadsf
zxc1321132dsfa
abcABCDFdefgDEFGHIJhijakfdsadsf;dsa
Exemplo de Saída:
1 1 2 3 I n p t u
1 1 2 3 e q w
a a a d d d d f f f s s s s
1 1 1 2 2 3 3 a c d f s x z
; A B C D D E F F G H I J a a a a b c d d d d e f f f g h i j k s s s
Código de Exemplo:
while True:
try:
dados = input()
conjunto = list(dados)
conjunto.sort()
resultado = ' '.join(conjunto)
print(resultado)
except EOFError:
break
7-2: Inversão de Dados Numéricos
Leia uma linha de inteiros e exiba-os na ordem inversa.
Formato de Entrada: Várias linhas, cada uma com números inteiros separados por espaço.
Formato de Saída: Para cada linha, imprima os números na ordem inversa, separados por espaço.
Exemplo de Entrada:
1 3 5 9 7 6 8 2 4 0 234 656 2223
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-3 -43 23 435 -5667 231 100 2002 2035
Exemplo de Saída:
2223 656 234 0 4 2 8 6 7 9 5 3 1
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
2035 2002 100 231 -5667 435 23 -43 -3
Código de Exemplo:
while True:
try:
valores = [int(v) for v in input().split()]
valores.reverse()
saida = ' '.join(map(str, valores))
print(saida)
except EOFError:
break
7-4: Filtragem de Alturas Acima da Média
Para uma lista de alturas de alunos, selecione aquelas que excedem a média e exiba-as na ordem original.
Formato de Entrada: Uma única linha com inteiros positivos representando alturas.
Formato de Saída: As alturas acima da média, cada uma seguida por um espaço.
Exemplo de Entrada:
143 174 119 127 117 164 110 128
Exemplo de Saída:
143 174 164
Código de Exemplo:
alturas = [int(a) for a in input().split()]
total = sum(alturas)
quantidade = len(alturas)
media = total / quantidade
selecionadas = []
for h in alturas:
if h > media:
selecionadas.append(h)
print(' '.join(map(str, selecionadas)), end=' ')
7-5: Contagem de Dígitos e Soma
Dado um número inteiro positivo, determine o número de dígitos e a soma de seus dígitos.
Formato de Entrada: Uma linha com um inteiro positivo N.
Formato de Saída: Uma linha com a contagem de dígitos e a soma, separadas por espaço.
Exemplo de Entrada:
456
Exemplo de Saída:
3 15
Código de Exemplo:
numero_str = input()
tamanho = len(numero_str)
soma_digitos = sum(int(d) for d in numero_str)
print(tamanho, soma_digitos)
7-6: Substituição de Letras Maiúsculas
Substitua letras maiúsculas em uma string seguindo uma tabela de mapeamento simétrico (A→Z, B→Y, etc.), mantendo outros caracteres inalterados.
Formato de Entrada: Uma linha com a string de entrada.
Formato de Saída: A string modificada após as substituições.
Exemplo de Entrada:
This is a pen.
Exemplo de Saída:
Ghis is a pen.
Código de Exemplo:
texto = input()
resultado = []
for caractere in texto:
if caractere.isupper():
novo_codigo = 65 + 25 - (ord(caractere) - 65)
resultado.append(chr(novo_codigo))
else:
resultado.append(caractere)
print(''.join(resultado))
7-7: Índices de Caracteres em String
Dada uma string e dois caracteres, exiba os índices desses caracteres na string, percorrendo da direita para a esquerda.
Formato de Entrada: Primeira linha: a string. Segunda linha: dois caracteres separados por espaço.
Formato de Saída: Para cada ocorrência, imprima o índice e o caractere, um por linha, do maior índice para o menor.
Exemplo de Entrada:
pmispsissippi
s p
Exemplo de Saída:
11 p
10 p
8 s
7 s
5 s
4 p
3 s
0 p
Código de Exemplo:
cadeia = input()
caractere1, caractere2 = input().split()
comprimento = len(cadeia)
for idx in range(comprimento - 1, -1, -1):
if cadeia[idx] == caractere1:
print(idx, caractere1)
elif cadeia[idx] == caractere2:
print(idx, caractere2)
7-8: Extração de Letras Únicas
De uma string, extraia as 10 primeiras letras inglesas únicas (ignorando maiúsculas/minúsculas). Se não houver 10, exiba "not found".
Formato de Entrada: Uma linha com a string.
Formato de Saída: As 10 letras únicas ou a mensagem de erro.
Exemplo de Entrada:
poemp134567
Exemplo de Saída:
not found
Exemplo de Entrada 2:
This 156is a test example
Exemplo de Saída 2:
Thisaexmpl
Código de Exemplo:
entrada = input()
coletadas = []
contagem = 0
for ch in entrada:
if ch.isalpha():
ch_lower = ch.lower()
if ch_lower not in [c.lower() for c in coletadas]:
coletadas.append(ch)
contagem += 1
if contagem == 10:
break
if contagem == 10:
print(''.join(coletadas))
else:
print("not found")
7-9: Verificação de Anagramas
Duas strings são anagramas se uma for uma permutação da outra. Verifique se as strings fornecidas são anagramas.
Formato de Entrada: Duas linhas, cada uma com uma string.
Formato de Saída: "yes" se forem anagramas, caso contrário "no".
Exemplo de Entrada:
Mary
arMy
Exemplo de Saída:
yes
Exemplo de Entrada 2:
hello world
world hello
Exemplo de Saída 2:
yes
Exemplo de Entrada 3:
I am very good.
verygood I am.
Exemplo de Saída 3:
no
Código de Exemplo:
from collections import Counter
primeira = input()
segunda = input()
if sorted(primeira) == sorted(segunda):
print("yes")
else:
print("no")
7-10: Problema do Rei dos Macacos
N macacos formam um círculo, numerados de 1 a N. Eles contam de 1 a 3, e o macaco que diz 3 é eliminado. O processo se repete até restar um macaco, que é o rei. Determine a posição original do rei.
Formato de Entrada: Uma linha com um inteiro positivo N (≤1000).
Formato de Saída: O número do macaco eleito.
Exemplo de Entrada:
11
Exemplo de Saída:
7
Código de Exemplo:
n = int(input())
macacos = list(range(1, n + 1))
posicao_atual = 0
while len(macacos) > 1:
posicao_atual = (posicao_atual + 2) % len(macacos)
del macacos[posicao_atual]
print(macacos[0])
7-11: Elementos Não Comuns em Duas Listas
Dadas duas listas de elementos, encontre todos os elemenots que aparecem em uma lista mas não na outra, mantendo a ordem de aparição original.
Formato de Entrada: Duas linhas, cada uma com elementos separados por espaço (podem ter duplicatas).
Formato de Saída: Os elementos não comuns, na ordem em que aparecem nas listas, separadso por espaço.
Exemplo de Entrada:
10 3 -5 2 8 0 5 -15 9 100
10 6 4 8 2 -5 9 0 100 1
Exemplo de Saída:
3 5 -15 6 4 1
Código de Exemplo:
lista1 = input().split()
lista2 = input().split()
conjunto1 = set(lista1)
conjunto2 = set(lista2)
resultado = []
for item in lista1:
if item not in conjunto2:
resultado.append(item)
for item in lista2:
if item not in conjunto1:
resultado.append(item)
print(' '.join(resultado))