2900
Faixa de problemas: 2900-2999
Total: 26 problemas
2903 - A Symmetrical Pizza
Descrição do Problema: 2903 - A Symmetrical Pizza
2903 - A Symmetrical Pizza |
---|
| mdc(a, b: Inteiro): Inteiro = se b == 0 então a senão mdc(b, a mod b) fim
n = leia_texto.selecione(_ <> '.').inteiro
resp = n * 36000 div mdc(n, 36000) div n
escreva resp
|
2906 - Database of Clients
Descrição do Problema: 2906 - Database of Clients
2906 - Database of Clients |
---|
| n = leia_inteiro
limpar(s: Texto) = s.selecione(_ <> '.').pegue_enquanto(_ <> '+')
emails = leia_textos(n)
.mapeie(_.divida("@"))
.mapeie(a => "{limpar(a[1])}@{a[2]}")
.ordene
diferentes = emails.zip(emails.cauda).selecione(a => a.primeiro <> a.segundo).tamanho + 1
escreva diferentes
|
2922 - Salas De Aula
Descrição do Problema: 2922 - Salas De Aula
2922 - Salas De Aula |
---|
| var b := leia_inteiros(" ").ordene
enquanto nao eof faca
x, y = b[1], b[2]
se x <> y entao
escreva y - x - 1
senao
escreva 0
fim
b := leia_inteiros(" ").ordene
fim
|
2923 - Birinho
Descrição do Problema: 2923 - Birinho
2923 - Birinho |
---|
| var s := leia_texto
enquanto não eof faça
r = s.divida(" ").mapeie(_.real)
t, a, w, c = r[1], r[2], r[3], r[4]
percentual = a / t * 100
resposta = se percentual >= c então "critical"
senãose percentual >= w então "warning"
senão "OK"
fim
escreva resposta
s := leia_texto
fim
|
2924 - BigInt
Descrição do Problema: 2924 - BigInt
2924 - BigInt |
---|
| tipo Big = Lista[Inteiro]
somar(a, b: Big, p: Inteiro, saida: Big): Big =
se a == [] e b == [] então
se p == 0 então saida senão 1 :: saida fim
senão
se b == [] então
somar(a, [p], 0, saida)
senãose a == [] então
somar(b, [p], 0, saida)
senão
s = a.cabeça + b.cabeça + p
somar(a.cauda, b.cauda, s div 10, (s mod 10) :: saida)
fim
fim
#somar(a, b: Big, p: Inteiro, saida: Big): Big = escolha (a, b, p)
# caso ([], [], 0) => saida
# caso ([], [], 1) => 1 :: saida
# caso (a , [], p) => somar(a, [p], 0, saida)
# caso ([], b, p) => somar(b, [p], 0, saida)
# caso (a::as, b::bs, p) =>
# s = a + b + p
# somar(as, bs, s div 10, (s mod 10) :: saida)
#fim
a, b = leia_texto.inverta.lista.mapeie(_ - '0')
escreva somar(a,b, 0, []).junte("")
|
2926 - Então é Natal!
Descrição do Problema: 2926 - Então é Natal!
2926 - Então é Natal! |
---|
| i = leia_inteiro
escreva "Ent{"a" * i}o eh N{"a" * i}t{"a" * i}l!"
|
2927 - Imprevistos Natalinos
Descrição do Problema: 2927 - Imprevistos Natalinos
2927 - Imprevistos Natalinos |
---|
| d = leia_inteiros(" ")
a, c, x, y = d[1], d[2], d[3], d[4]
r = c - x - y - a
se r > 0 então
escreva "Igor feliz!"
senãose x * 2 > y então
escreva "Caio, a culpa eh sua!"
senão
escreva "Igor bolado!"
fim
|
2928 - Cruzando Lagos
Descrição do Problema: 2928 - Cruzando Lagos
2928 - Cruzando Lagos |
---|
| n = leia_inteiro
s = leia_textos(n).mapeie(_.cabeca).junte("")
r = s.divida_quando(_ <> _).selecione(_.cabeca == '.').mapeie(_.tamanho).ordene.inverta
se r.tamanho > 0 e r.cabeca > 2 entao
escreva "N"
senao
escreva r.tamanho
fim
|
2929 - Menor da Pilha
Descrição do Problema: 2929 - Menor da Pilha
2929 - Menor da Pilha |
---|
| n = leia_inteiro
var pilha:= [0].cauda
var tamanho := 0
para i de 1 ate n faca
entrada = leia_texto
valor = entrada.descarte(5).inteiro
escolha entrada[2]
caso 'U' se tamanho == 0 =>
pilha := valor :: pilha
tamanho := 1
caso 'U' =>
menor = se valor < pilha.cabeca entao valor senao pilha.cabeca fim
pilha := menor :: pilha
tamanho := tamanho + 1
caso 'I' se tamanho > 0 =>
escreva pilha.cabeca
caso 'O' se tamanho > 0 =>
pilha := pilha.cauda
tamanho := tamanho - 1
caso _ =>
escreva "EMPTY"
fim
fim
|
2930 - TCC da Depressão Natalino
Descrição do Problema: 2930 - TCC da Depressão Natalino
2930 - TCC da Depressão Natalino |
---|
| a = leia_inteiros(" ")
E, D = a[1], a[2]
se D >= 24 ou E > D então
escreva ("Eu odeio a professora!")
senãose E <= D - 3 então
escreva ("Muito bem! Apresenta antes do Natal!")
senão
escreva ("Parece o trabalho do meu filho!")
se E + 2 < 24 então
escreva ("TCC Apresentado!")
senão
escreva ("Fail! Entao eh nataaaaal!")
fim
fim
|
2936 - Quanta Mandioca?
Descrição do Problema: 2936 - Quanta Mandioca?
2936 - Quanta Mandioca? |
---|
| a = leia_inteiros(5)
p = [300, 1500, 600, 1000, 150]
var total := 225
para i de 1 ate 5 faca
total := total + a[i]* p[i]
fim
escreva total
|
2939 - Casais
Descrição do Problema: 2939 - Casais
2939 - Casais |
---|
| n = leia_inteiro
var a, b := BigInt(16), BigInt(2)
para i de 2 até n faça
a, b := 2 * (i + 1) * (a + b * 2 * i) mod 1000000007, a
fim
escreva b
|
2949 - A Sociedade do Anel
Descrição do Problema: 2949 - A Sociedade do Anel
2949 - A Sociedade do Anel |
---|
| n = leia_inteiro
var anoes, elfos, humanos, magos, hobbits := 0
para i de 1 até n faça
a = leia_textos(" ")[2]
escolha a
caso "A" => anoes := anoes + 1
caso "E" => elfos := elfos + 1
caso "H" => humanos := humanos + 1
caso "M" => magos := magos + 1
caso "X" => hobbits := hobbits + 1
caso _ =>
fim
fim
escreva "{hobbits} Hobbit(s)"
escreva "{humanos} Humano(s)"
escreva "{elfos} Elfo(s)"
escreva "{anoes} Anao(s)"
escreva "{magos} Mago(s)"
|
2950 - As Duas Torres
Descrição do Problema: 2950 - As Duas Torres
2950 - As Duas Torres |
---|
| a = leia_inteiros(" ")
n, x, y = a[1], a[2], a[3]
icm = n / (x + y)
escreva icm formato "%.2f"
|
2951 - O Retorno do Rei
Descrição do Problema: 2951 - O Retorno do Rei
2951 - O Retorno do Rei |
---|
| a = leia_inteiros(" ")
n, g = a[1], a[2]
var valores := Lista('Z', 0)
para i de 1 ate n gere
b = leia_textos(" ")
r, v = b[1].cabeca, b[2].inteiro
valores[r] := v
fim
x = leia_inteiro
letras = leia_textos(" ").mapeie(_.cabeca)
var saida := 0
para letra em letras faca
saida := saida + valores[letra]
fim
escreva saida
se saida >= g entao
escreva "You shall pass!"
senao
escreva "My precioooous"
fim
|
2953 - Mais um Joguinho
Descrição do Problema: 2953 - Mais um Joguinho
2953 - Mais um Joguinho |
---|
| MOD = 1000000007
contar_possibilidades(n, d1, d2, d3: Inteiro): Inteiro =
se n < 1 então
d1
senão
contar_possibilidades(n - 1, (d2 + d3) mod MOD, d1, d2)
fim
n = leia_inteiro
escreva contar_possibilidades(n, 0, 0, 1)
|
2956 - Derivada de 13 Variáveis
Descrição do Problema: 2956 - Derivada de 13 Variáveis
2956 - Derivada de 13 Variáveis |
---|
| a = leia_reais(" ")
p, t = a[1], a[2]
area = p * t / 2
escreva "Concluimos que, dado o limite da entrada, a resposta seria: y = f(x) = {area formato "%.5f"}."
|
2958 - O Rolê Bad Vibes
Descrição do Problema: 2958 - O Rolê Bad Vibes
2958 - O Rolê Bad Vibes |
---|
| n = leia_inteiros(" ")[1]
problemas = para i de 1 até n, a em leia_textos(" ") gere
(a, -(a[2].inteiro + a[1].inteiro))
fim
ordem = problemas.ordene(_.segundo).mapeie(_.primeiro)
escreva ordem.junte("\n")
|
2963 - Bobo da Corte
Descrição do Problema: 2963 - Bobo da Corte
2963 - Bobo da Corte |
---|
| n = leia_inteiro
bobo = leia_inteiro
var resp := "S"
para i de 2 até n se leia_inteiro > bobo faça
resp := "N"
fim
escreva resp
|
2968 - Hora da Corrida
Descrição do Problema: 2968 - Hora da Corrida
2968 - Hora da Corrida |
---|
| a = leia_inteiros(" ")
n, v = a[1], a[2]
t = n * v / 10
saida = para i de 1 até 9 gere (t * i).teto.inteiro fim
escreva saida.junte(" ")
|
2981 - Vamos Fechar
Descrição do Problema: 2981 - Vamos Fechar
2981 - Vamos Fechar |
---|
| a = leia_inteiros(" ")
c, g = a[1], a[2]
r = 21 + c div g
se r > 30 entao
escreva "A UFSC fecha dia {r - 30} de outubro."
senao
escreva "A UFSC fecha dia {r} de setembro."
fim
|
2982 - A Greve para ou Continua?
Descrição do Problema: 2982 - A Greve para ou Continua?
2982 - A Greve para ou Continua? |
---|
| n = leia_inteiro
var v := 0
para i de 1 ate n faca
a = leia_textos(" ")
se a[1] == "G" entao
v := v + a[2].inteiro
senao
v := v - a[2].inteiro
fim
fim
se v > 0 entao
escreva "NAO VAI TER CORTE, VAI TER LUTA!"
senao
escreva "A greve vai parar."
fim
|
2983 - Nem Tudo é Greve
Descrição do Problema: 2983 - Nem Tudo é Greve
2983 - Nem Tudo é Greve |
---|
| primo(x: Inteiro) = x == 2 ou (x > 1 e x mod 2 <> 0 e
para i de 3 ate raiz(x + 1).inteiro passo 2 se x mod i == 0 gere i fim.tamanho == 0)
n = leia_inteiro
x = leia_inteiros(n)
numeros = x.ordene.divida_quando(_ <> _).mapeie(a => a[1])
primos = para num em numeros se primo(num) gere num fim
escreva primos.tamanho
se primos == [] então
escreva ""
senão
escreva "{primos.junte(", ")}."
fim
|
2984 - Assuntos Pendentes
Descrição do Problema: 2984 - Assuntos Pendentes
2984 - Assuntos Pendentes |
---|
| s = leia_texto
var x := 0
para c em s faca
se c == '(' entao x := x + 1
senaose x > 0 e c == ')' entao x := x - 1
fim
fim
se x == 0 entao
escreva "Partiu RU!"
senao
escreva "Ainda temos {x} assunto(s) pendente(s)!"
fim
|
2986 - Nem Tudo é Greve Versão Hard
Descrição do Problema: 2986 - Nem Tudo é Greve Versão Hard
2986 - Nem Tudo é Greve Versão Hard |
---|
| n = leia_inteiro
var a, b, c := 0, 0, 1
para i de 1 ate n faca
a, b, c := b, c, ((a + b) mod 1000000007 + c) mod 1000000007
fim
escreva c
|
2987 - Balão de Honra
Descrição do Problema: 2987 - Balão de Honra
2987 - Balão de Honra |
---|
| escreva leia_texto[1] - 64
|