Pular para conteúdo

3300

Faixa de problemas: 3300-3399

Total: 26 problemas

3300 - Números Má Sorte Recarregados

Descrição do Problema: 3300 - Números Má Sorte Recarregados

3300 - Números Má Sorte Recarregados
1
2
3
4
5
6
7
8
a = leia_texto
b = a.lista.zip(a.cauda).selecione(_.primeiro == '1').selecione(_.segundo == '3').tamanho

se b > 0 entao
  escreva "{a} es de Mala Suerte"
senao
  escreva "{a} NO es de Mala Suerte"
fim

3301 - Sobrinho do Meio

Descrição do Problema: 3301 - Sobrinho do Meio

3301 - Sobrinho do Meio
a = leia_inteiros(" ")
h, z, l = a[1], a[2], a[3]

se h < z e z < l ou l < z e z < h entao
  escreva "zezinho"
senaose z < h e h < l ou l < h e h < z entao
  escreva "huguinho"
senao
  escreva "luisinho"
fim

3302 - Resposta Certa

Descrição do Problema: 3302 - Resposta Certa

3302 - Resposta Certa
1
2
3
4
5
6
7
8
var n := leia_inteiro
enquanto n > 0 faca
  numeros = leia_inteiros(n)
  para i de 1 ate n faca
    escreva "resposta {i}: {numeros[i]}"
  fim
  n := leia_inteiro
fim

3303 - Palavrão

Descrição do Problema: 3303 - Palavrão

3303 - Palavrão
1
2
3
4
5
6
palavra = leia_texto
se palavra.tamanho >= 10 entao
  escreva "palavrao"
senao
  escreva "palavrinha"
fim

3306 - Consulta e Alteração

Descrição do Problema: 3306 - Consulta e Alteração

3306 - Consulta e Alteração
mdc(x, y: Inteiro)
  var a, b := x, y
  enquanto b <> 0 faca
    a, b := b, a mod b
  fim
  retorne a
fim

q = leia_inteiros(" ")[2]
var nums := leia_inteiros(" ")

para i de 1 até q faça
  entrada = leia_inteiros(" ")
  t = entrada[1]
  escolha t
    caso 1 =>
      a, b, v = entrada[2], entrada[3], entrada[4]
      para j de a até b faça
        nums[j] := nums[j] + v
      fim
    caso 2 =>
      a, b = entrada[2], entrada[3]
      var r := nums[a]
      para i de a + 1 até b faça
        r := mdc(r, nums[i])
      fim
      escreva r
    caso _ => escreva i
  fim
fim

3307 - Decora o Rolê!

Descrição do Problema: 3307 - Decora o Rolê!

3307 - Decora o Rolê!
n = leia_inteiro
para i de 1 até n faça
    area = leia_inteiro
    raio = area / 12.56
    se raio < 144 então
        escreva "vermelho = R$ {area * 0.09 formato "%.2f"}"
    senãose raio <= 225 então
        escreva "azul = R$ {area * 0.07 formato "%.2f"}"
    senão
        escreva "amarelo = R$ {area * 0.05 formato "%.2f"}"
    fim
fim

3308 - Elevador

Descrição do Problema: 3308 - Elevador

3308 - Elevador
1
2
3
4
5
6
7
8
n = leia_inteiro
para i de 1 ate n faça
    a = leia_inteiros(" ")
    porta = a[1]
    andares = a[2] + a[3] + a[4]
    resposta = se andares > 1 então "X" senão (porta + andares) mod 2 fim
    escreva resposta
fim

3309 - Felizes são estes Números

Descrição do Problema: 3309 - Felizes são estes Números

3309 - Felizes são estes Números
1
2
3
4
5
6
7
8
feliz(n: Inteiro): Logico
  s = n.texto.lista.mapeie(_.inteiro - '0').mapeie(c => c * c).injete(0)(_ + _)
  retorne n == 1 ou n == 7 ou (n > 9 e feliz(s))
fim

leia_inteiro
a = leia_inteiros(" ").mapeie(feliz).selecione(_ == verdadeiro).tamanho
escreva a

3311 - Hudinho e o seu Trabalho

Descrição do Problema: 3311 - Hudinho e o seu Trabalho

3311 - Hudinho e o seu Trabalho
1
2
3
4
n = leia_inteiro
a = leia_textos(n)
b = a.ordene((s, r) => s[1] < r[1])
escreva b.junte("\n")

3312 - Imberbe Matemático

Descrição do Problema: 3312 - Imberbe Matemático

3312 - Imberbe Matemático
var z := BigInt(1)
fat = para i de 1 ate 100 gere z := z * i z fim
primos = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
primo = para i de 1 ate 100 gere primos.contem(i) fim

n = leia_inteiro
x = leia_inteiros(" ")
para a em x se primo[a] faca
  escreva "{a}! = {fat[a]}"
fim

3313 - Jogo de Palavras

Descrição do Problema: 3313 - Jogo de Palavras

3313 - Jogo de Palavras
rot(a: Texto, f: Logico)
  tam = a.tamanho
  var x := a + a
  var valor := x.pegue(tam)
  enquanto x.tamanho >= tam faca
    m = x.pegue(tam)
    se f e m < valor ou nao f e m > valor entao
      valor := m
    fim
    primeiro = valor[1]
    se f entao
      x := x.cauda.descarte_enquanto(_ > primeiro)
    senao
      x := x.cauda.descarte_enquanto(_ < primeiro)
    fim
  fim
  retorne valor
fim

var n := 0
var s := leia_texto
enquanto s <> "*" faca
  menor = rot(s, verdadeiro)
  maior = rot(s, falso)
  n := n + 1
  escreva "Caso {n}: {menor} {maior}"
  s := leia_texto
fim

3315 - Língua do Computador

Descrição do Problema: 3315 - Língua do Computador

3315 - Língua do Computador
1
2
3
4
5
6
7
d2b(n: Inteiro): Texto = se n > 0 entao "{d2b(n div 2)}{n mod 2}" senao "" fim

a = para i de 1 ate 4 gere
  leia_inteiros(" ").injete(0)(_ + _)
fim
d = a.ordene[-1]
escreva "{d} = {d2b(d)}"

3338 -

Descrição do Problema: 3338 -

3338 -
t = leia_inteiro
p = para i de 1 até 1000 gere i fim
para i de 1 até t faça
  numeros = leia_inteiros(" ")
  chocolates = numeros.zip(p)
                      .selecione(a => a.segundo mod 2 == 0)
                      .mapeie(a => a.primeiro)
                      .injete(0)(_ + _)
  escreva chocolates
fim

3339 - Carina

Descrição do Problema: 3339 - Carina

3339 - Carina
1
2
3
4
5
6
7
q = leia_inteiro
para i de 1 até q faça
  a = leia_inteiros(" ")
  l, r = a[1], a[2]
  quadrados = (raiz(r).piso - raiz(l).teto + 1).inteiro
  escreva quadrados
fim

3342 - Keanu

Descrição do Problema: 3342 - Keanu

3342 - Keanu
n = leia_inteiro
qntTotalCasas = n*n

se n mod 2 == 0 então
    a = qntTotalCasas div 2
    b = a
    escreva "{a} casas brancas e {b} casas pretas"
senão 
    a = (qntTotalCasas+1) div 2
    b = a-1
    escreva "{a} casas brancas e {b} casas pretas"
fim

3343 - Attack On Gasparini

Descrição do Problema: 3343 - Attack On Gasparini

3343 - Attack On Gasparini
entrada = leia_inteiros(" ")
titas = leia_texto
tamanho = leia_inteiros(" ")

n, x = entrada[1], entrada[2]
t1, t2, t3 = tamanho[1], tamanho[2], tamanho[3] # tamanho dos titas
var muralhas := Lista.mutável(n, x)
var p, m, g = 1

para t em titas faça
  escolha t
    caso 'P' =>
      enquanto muralhas[p] < t1 faça p := p + 1 fim
      muralhas[p] := muralhas[p] - t1
    caso 'M' =>
      enquanto muralhas[m] < t2 faça m := m + 1 fim
      muralhas[m] := muralhas[m] - t2
    caso  _  =>
      enquanto muralhas[g] < t3 faça g := g + 1 fim
      muralhas[g] := muralhas[g] - t3
  fim
fim
escreva [p, m, g].ordene[3]

3344 - Brute

Descrição do Problema: 3344 - Brute

3344 - Brute
escreva "4"

3346 - Flutuação do PIB

Descrição do Problema: 3346 - Flutuação do PIB

3346 - Flutuação do PIB
1
2
3
4
entrada = leia_reais(" ")
f1, f2 = entrada[1], entrada[2]
resposta = (100 + f1) * (f2 / 100 + 1) - 100
escreva resposta formato "%.6f"

3348 - Jogo das Aranhas

Descrição do Problema: 3348 - Jogo das Aranhas

3348 - Jogo das Aranhas
1
2
3
4
5
numeros = ["2", "7", "5", "30", "169", "441", "1872", "7632",
  "1740", "93313", "459901", "1358657", "2504881", "13482720",
  "25779600", "68468401", "610346880", "1271932200", "327280800"]

escreva numeros[leia_inteiro]

3357 - Rico do Mate

Descrição do Problema: 3357 - Rico do Mate

3357 - Rico do Mate
entrada = leia_reais(" ")
n = entrada[1].inteiro
l, q = (entrada[2] * 10).arredonde, (entrada[3] * 10).arredonde
participantes = leia_textos(" ")
r = l mod (n * q)
se r mod q == 0 entao
  agua = q / 10
  rei = (l - 1) mod (n * q) div q + 1
  escreva "{participantes[rei]} {agua formato "%.1f"}"
senão
  agua = r mod q / 10
  rei = r div q + 1
  escreva "{participantes[rei]} {agua formato "%.1f"}"
fim

3358 - Sobrenome Não é Fácil

Descrição do Problema: 3358 - Sobrenome Não é Fácil

3358 - Sobrenome Não é Fácil
n = leia_inteiro
para i de 1 ate n faça
  s = leia_texto
  a = s.minusculo.divida_quando((x, y) => "aeiou" - "{x}" <> "aeiou" ou "aeiou" - "{y}" <> "aeiou")
  b = a.ordene(_.tamanho).ultimo.tamanho
  se b >= 3 entao
    escreva "{s} nao eh facil"
  senao
    escreva "{s} eh facil"
  fim
fim

3369 - KIARA is a Recursive Acronym

Descrição do Problema: 3369 - KIARA is a Recursive Acronym

3369 - KIARA is a Recursive Acronym
n = leia_inteiro

var achou := falso
var linhas := Lista(0, "")
var acro := "                          "
var i := 1
enquanto não achou e i <= n faça
  linha = leia_texto
  se linha.tamanho <= 1 então
    achou:= verdadeiro
  senão
    se acro[linha.cabeça - 'A' + 1] == ' ' então
      acro := acro.updated(linha.cabeça - 'A', linha.cabeça)
    fim
    linhas := linha.cauda :: linhas
  fim
  i:= i + 1
fim
linhas := linhas.ordene(_.tamanho)
acro := "ABCDEFGHIJKLMNOPQRSTUVWXYZ" - acro
enquanto linhas <> [] e nao achou faça
  achou := acro - linhas.cabeça == acro
  linhas := linhas.cauda
fim

se achou então
  escreva "Y"
senão
  escreva "N"
fim

3377 - Geometria?! Por que não??

Descrição do Problema: 3377 - Geometria?! Por que não??

3377 - Geometria?! Por que não??
quantidade(s: Texto, c: Caractere) = s.selecione(_ == c).tamanho

inclinacao(s: Texto) = quantidade(s, 'U') / quantidade(s, 'R')

tipo Area
  area: Real
  x, y: Inteiro
fim

area(alfa: Real) = (x, y: Inteiro) =>  # reta = alfa * x
  se alfa * (x - 1) >= y ou alfa * x <= y então
    abs(alfa * (x - 0.5) - y)
  senão    # a reta cruza a linha do caminho
    xr = (y / alfa - x) / 2
    xr * (y - alfa * x) + (xr + 0.5) * (y - alfa * (x - 1))
  fim

calc_area(d: (Inteiro, Inteiro) => Real) =
  (a: Area, c: Caractere) => se c == 'R'
    entao Area(a.area + d(a.x + 1, a.y), a.x + 1, a.y    )
    senão Area(a.area                  , a.x    , a.y + 1)
  fim

# programa principal
inicio = Area(0.0, 0, 0)
var entrada, t := leia_texto, 1
enquanto entrada <> "S" faça
  a = area(inclinacao(entrada))
  area_total = entrada.injete(inicio)(calc_area(a)).area
  escreva "{t}. {area_total formato "%.3f"}"
  entrada, t := leia_texto, t + 1
fim

3397 - Melhor do Multiverso

Descrição do Problema: 3397 - Melhor do Multiverso

3397 - Melhor do Multiverso
pergunta = leia_texto
escreva("eu")

3398 - Moeda Convertida

Descrição do Problema: 3398 - Moeda Convertida

3398 - Moeda Convertida
1
2
3
n, m = leia_real
valor = n * m
escreva valor formato "%.2f"

3399 - Meu nome é Enésimo!

Descrição do Problema: 3399 - Meu nome é Enésimo!

3399 - Meu nome é Enésimo!
1
2
3
4
in = leia_inteiros(" ")
a, b, c, n = in[1], in[2], in[3], in[4]
enesimo = (n - 1) * (b - a) + a
escreva enesimo