3400
Faixa de problemas: 3400-3499
Total: 30 problemas
3405 - Fatorial
Descrição do Problema: 3405 - Fatorial
3405 - Fatorial |
---|
| var n := leia_inteiro
var zeros := 0
enquanto n > 0 faça
n := n div 5
zeros := zeros + n
fim
escreva zeros
|
3407 - Hora do Café
Descrição do Problema: 3407 - Hora do Café
3407 - Hora do Café |
---|
| m = leia_inteiros(" ")[2]
natan, samuel = leia_texto.selecione(_ == '1').tamanho
se m == natan então
escreva "Tudo certo."
senãose m == samuel então
escreva "Pegou de Samuel."
senão
escreva "Pegou de um estranho."
fim
|
3408 - Ignore as Letras
Descrição do Problema: 3408 - Ignore as Letras
3408 - Ignore as Letras |
---|
| so_numeros(s: Texto) =
s.selecione(c => c >= '0' e c <= '9').inteiro
n = leia_inteiro
valores = leia_textos(n)
numeros = valores.mapeie(so_numeros)
soma = numeros.injete(0)(_ + _)
escreva soma
|
3412 - Avaliações de Algoritmos
Descrição do Problema: 3412 - Avaliações de Algoritmos
3412 - Avaliações de Algoritmos |
---|
| n = leia_inteiro
para i de 1 até n faça
nome = leia_texto
notas = leia_reais(" ")
maiores = notas.pegue(3).ordene.inverta
media = escolha notas.tamanho
caso 1 => (notas[1] + 0) / 2
caso 2 => (notas[1] + notas[2]) / 2
caso 4 se notas[4] > maiores[3] => (maiores[1] + maiores[2] + notas[4]) / 3
caso _ => (notas[1] + notas[2] + notas[3]) / 3
fim
escreva "{nome}: {media formato "%.1f"}"
fim
|
3416 - Eu Quero Cafééé
Descrição do Problema: 3416 - Eu Quero Cafééé
3416 - Eu Quero Cafééé |
---|
| entrada = leia_inteiros(" ")
n, l, d = entrada[1], entrada[2], entrada[3]
a = n * d / (l * 1000)
b = a.teto.inteiro
escreva b * l
|
3422 - José e a Súmula
Descrição do Problema: 3422 - José e a Súmula
3422 - José e a Súmula |
---|
| min(a, b: Inteiro): Inteiro = se a <= b então a senão b fim
n = leia_inteiro
para i de 1 até n faça
a = leia_textos(" ")
o, tempo = a[1].inteiro, a[2]
t = (se tempo == "1T" então 0 senão 45 fim) + min(45, o)
extra = o - 45
se extra <= 0 então
escreva t
senão
escreva "{t}+{extra}"
fim
fim
|
3424 - Achando os Monótonos Não-Triviais Maximais
Descrição do Problema: 3424 - Achando os Monótonos Não-Triviais Maximais
3424 - Achando os Monótonos Não-Triviais Maximais |
---|
| leia_texto
s = leia_textos("b").mapeie(_.tamanho).selecione(_ > 1)
total = s.injete(0)(_ + _)
escreva total
|
Descrição do Problema: 3432 - Interceptando Informações
3432 - Interceptando Informações |
---|
| ns = leia_texto
sucesso = ns.selecione(_ == '9').tamanho == 0
se sucesso então
escreva "S"
senão
escreva "F"
fim
|
3433 - Jogando 23
Descrição do Problema: 3433 - Jogando 23
3433 - Jogando 23 |
---|
| menor(a, b: Inteiro) = se a < b então a senão b fim
soma(lista: Lista[Inteiro]) =
lista.mapeie(a => menor(a, 10)).injete(0)(_ + _)
cartas_disponiveis(lista: Lista[Inteiro]) =
(para i de 1 ate 13, j de 1 ate 4 gere i fim - lista)
.ordene.divida_quando(_ <> _).mapeie(_.cabeça)
n = leia_inteiro
j, m, comum = leia_inteiros(" ")
joao = soma(j + comum)
maria = soma(m + comum)
cartas = cartas_disponiveis(j + m + comum)
var carta := -1
para c em cartas.inverta faca
se maria + menor(c, 10) == 23 ou
maria + menor(c, 10) < 23 e joao + menor(c, 10) > 23 então
carta := c
fim
fim
escreva carta
|
3444 - Dobras da Cidade
Descrição do Problema: 3444 - Dobras da Cidade
3444 - Dobras da Cidade |
---|
| pot2(k: Inteiro, p: BigInt) = BigInt(2).pow(k) - (p + 1)
a = leia_textos(" ")
n = a[1].inteiro
var p, h := BigInt(a[2]) - 1 , BigInt(a[3]) - 1
w = para k de n até 1 passo -1 gere
c = pot2(k - 1, h) <= -1
se c então h := pot2(k, h) fim
c
fim
V, F = verdadeiro, falso
saida = para k de n até 1 passo -1 gere
pk1 = pot2(k - 1, p)
p := escolha (w[k], pk1 >= 0)
caso (V, V) => pk1 # L
caso (F, F) => -(pk1 + 1) # L
caso (V, F) => pot2(k, p) # R
caso (F, V) => p # R
fim
se w[k] == (pk1 >= 0) então 'L' senão 'R' fim
fim.junte("")
escreva saida
|
3445 - Passeios cotidianos
Descrição do Problema: 3445 - Passeios cotidianos
3445 - Passeios cotidianos |
---|
| entrada = leia_inteiros(" ")
n = entrada[1]
var h, w := entrada[2], entrada[3]
para i de 1 até n faça
chuva = leia_textos(" ")
H = se chuva[1] == "Y" ou w == 0 então h := h - 1 w := w + 1 "Y" senão "N" fim
W = se chuva[2] == "Y" ou h == 0 então w := w - 1 h := h + 1 "Y" senão "N" fim
escreva "{H} {W}"
fim
|
3446 - Quadrados Vazios
Descrição do Problema: 3446 - Quadrados Vazios
3446 - Quadrados Vazios |
---|
| vazios(x, y: Inteiro, livres: Lista[Inteiro]) =
para peça1 em livres.selecione(_ <= x) + [0],
peça2 em livres.selecione(_ <= x - peça1) - [peça1] + [0],
peça3 em livres.selecione(_ <= y) - [peça1, peça2] + [0],
peça4 em livres.selecione(_ <= y - peça3) - [peça1, peça2, peça3] + [0] gere
x + y - (peça1 + peça2 + peça3 + peça4)
fim.ordene.cabeça
a = leia_inteiros(" ")
E, K, D = a[3], a[2], a[1] - a[2] - a[3]
x = se E < 5 então E senão 0 fim
y = se D < 5 então D senão 0 fim
peças = [1, 2, 3, 4] - [K]
escreva vazios(x, y, peças)
|
3450 - Participando de uma Maratona
Descrição do Problema: 3450 - Participando de uma Maratona
3450 - Participando de uma Maratona |
---|
| tipo Corredor
nums: Lista[Inteiro]
t = nums[1]
s = nums[2]
fim
tipo Foto
nums: Lista[Inteiro]
u = nums[1]
a = nums[2]
b = nums[3]
fim
está_na_foto(f: Foto, c: Corredor): Lógico
p = (f.u - c.t) * c.s
retorne f.u >= c.t e f.a <= p e p <= f.b
fim
há_corredor_na_foto(foto: Foto, corredores: Lista[Corredor])
f(cs: Lista[Corredor]): Lógico =
se cs.tamanho == 0 então falso
senãose está_na_foto(foto, cs.cabeça) então verdadeiro
senão f(cs.cauda)
fim
retorne f(corredores)
fim
# programa principal
corredores = para i de 1 até leia_inteiro gere
Corredor(leia_inteiros(" "))
fim
fotos = para i de 1 até leia_inteiro gere
Foto(leia_inteiros(" "))
fim.selecione(foto => não há_corredor_na_foto(foto, corredores))
para i de 1 até leia_inteiro faça
johnny = Corredor(leia_inteiros(" "))
descartes = fotos.selecione(foto => não está_na_foto(foto, johnny)).tamanho
escreva descartes
fim
|
3454 - Alice no País do Jogo da Velha
Descrição do Problema: 3454 - Alice no País do Jogo da Velha
3454 - Alice no País do Jogo da Velha |
---|
| linha = leia_texto
resultado = escolha linha
caso "XOX" => "*"
caso "XXO" => "Alice"
caso "OXX" => "Alice"
caso _ => "?"
fim
escreva resultado
|
3455 - Banco Nacional de Questões
Descrição do Problema: 3455 - Banco Nacional de Questões
3455 - Banco Nacional de Questões |
---|
| m = leia_reais(" ")
a, b, c = m[1], m[2], m[3]
x = leia_texto[1]
d = escolha x
caso 'A' => 2
caso 'B' => 3
caso _ => 5
fim
t = (a * 2 + b * 3 + c * 5) / d
escreva (t - 0.5) formato "%.0f"
|
3456 - Divisibilidade por 7
Descrição do Problema: 3456 - Divisibilidade por 7
3456 - Divisibilidade por 7 |
---|
| var a := BigInt(leia_texto)
escreva a
enquanto a > 9 faça
a := a div 10 * 3 + a mod 10
escreva a
fim
|
3464 - Latência na Rede
Descrição do Problema: 3464 - Latência na Rede
3464 - Latência na Rede |
---|
| max(a, b: Inteiro) = se a > b então a senão b fim
min(a, b: Inteiro) = se a < b então a senão b fim
a = leia_inteiros(" ")
n, m = a[1], a[2]
s = leia_inteiro
var area_coberta := 0
para i de 1 até s faça
b = leia_inteiros(" ")
x, y, r = b[1], b[2], b[3]
xo = max(1, x - r)
xi = min(n, x + r)
yo = max(1, y - r)
yi = min(m, y + r)
area_coberta := area_coberta + (xi - xo + 1) * (yi - yo + 1)
fim
media = area_coberta / (n * m)
escreva media.inteiro
|
3465 - Cimba
Descrição do Problema: 3465 - Cimba
3465 - Cimba |
---|
| abc = leia_inteiros(" ")
a, b, c = abc[1], abc[2], abc[3]
s = (a + b + c) / 2
area = (s * (s - a) * (s - b) * (s - c)) ^ 0.5
escreva "{area formato "%.3f"} m2"
|
3467 - Esse é o meu lugar!
Descrição do Problema: 3467 - Esse é o meu lugar!
3467 - Esse é o meu lugar! |
---|
| var entrada := leia_texto
se entrada == "xxL" então
escreva("Esse eh o meu lugar")
senão
escreva("Oi, Leonard")
fim
|
3468 - Faça mais, mas faça melhor!
Descrição do Problema: 3468 - Faça mais, mas faça melhor!
3468 - Faça mais, mas faça melhor! |
---|
| ideia = leia_texto
se ideia.minúsculo == "oposicao" ou ideia.minúsculo == "contrariedade" então
escreva("mas")
senão
escreva("mais")
fim
|
3469 - In Site
Descrição do Problema: 3469 - In Site
3469 - In Site |
---|
| n = leia_inteiro
p = leia_inteiros(" ").ordene
mediana = p.descarte((n-1) div 2)
se n mod 2 == 1 então
escreva mediana.cabeça
senão
escreva (mediana[1] + mediana[2]) div 2
fim
|
3471 - Kashmir
Descrição do Problema: 3471 - Kashmir
3471 - Kashmir |
---|
| mdc(a, b: Inteiro): Inteiro = se b == 0 então a senão mdc(b, a mod b) fim
entrada = leia_inteiros(" ")
a = entrada[1]
b = entrada[2]
escreva mdc(a, b)
|
3473 - Alerte o próximo!
Descrição do Problema: 3473 - Alerte o próximo!
3473 - Alerte o próximo! |
---|
| a = leia_inteiro
escreva a+1
|
3474 - Boa divisão
Descrição do Problema: 3474 - Boa divisão
3474 - Boa divisão |
---|
| entrada = leia_reais(2)
valor = entrada[1]
divisor = entrada[2]
escreva(valor / divisor)
|
3475 - Conversor
Descrição do Problema: 3475 - Conversor
3475 - Conversor |
---|
| numeros = ["zero", "um", "dois", "tres", "quatro",
"cinco","seis", "sete", "oito", "nove"]
a = leia_texto
p = numeros.posicao(a) - 1
n = numeros[a.inteiro + 1]
se p >= 0 então
escreva p
senão
escreva n
fim
|
3476 - A união faz a força!
Descrição do Problema: 3476 - A união faz a força!
3476 - A união faz a força! |
---|
| a = leia_inteiros(" ")
s, b, c = a[1], a[2], a[3]
tempo = 1 / (1/s + 1/b + 1/c)
escreva tempo formato "%.3f"
|
3477 - Baú Danificado
Descrição do Problema: 3477 - Baú Danificado
3477 - Baú Danificado |
---|
| a = leia_inteiros(" ")
x, y, z = a[1], a[2], a[3]
se x*x == y*y + z*z então
area = (y + 3 * z / 4) * z / 2
escreva "AREA = {area.inteiro}"
senão
escreva "Nao eh retangulo!"
fim
|
3479 - Horo e os copos
Descrição do Problema: 3479 - Horo e os copos
3479 - Horo e os copos |
---|
| data = leia_texto.divida("/").inverta.junte("")
signo = escolha data
caso d se d <= "0119" => "capricornio"
caso d se d <= "0218" => "aquario"
caso d se d <= "0320" => "peixes"
caso d se d <= "0420" => "aries"
caso d se d <= "0520" => "touro"
caso d se d <= "0620" => "gemeos"
caso d se d <= "0722" => "cancer"
caso d se d <= "0822" => "leao"
caso d se d <= "0922" => "virgem"
caso d se d <= "1022" => "libra"
caso d se d <= "1121" => "escorpiao"
caso d se d <= "1221" => "sargitario"
caso _ => "capricornio"
fim
escreva signo
|
3484 - Altura Mínima
Descrição do Problema: 3484 - Altura Mínima
3484 - ~~Altura Mínima~~ |
---|
| h = leia_inteiros(" ")[2]
a = leia_inteiros(" ")
var brinquedos := 0
para x em a se x <= h faça
brinquedos := brinquedos + 1
fim
escreva brinquedos
|
3497 - Alice e as Canções e Iara
Descrição do Problema: 3497 - Alice e as Canções e Iara
3497 - ~~Alice e as Canções e Iara~~ |
---|
| a = leia_inteiros(" ")
soma = a.injete(0)(_ + _)
escreva 6 - soma
|