Pular para conteúdo

1700

Faixa de problemas: 1700-1799

Total resolvido: 20 de 100 problemas

1708 - Volta

Descrição do Problema: 1708 - Volta

Categoria: Ad-Hoc · Maratona SBC (1ª fase) 2014

1708 - Volta
1
2
3
4
a = leia_inteiros(" ")
x, y = a[1], a[2]
voltas = (x / (y - x)).teto.inteiro + 1
escreva voltas

1709 - Baralho Embaralhado

Descrição do Problema: 1709 - Baralho Embaralhado

Categoria: Estruturas e Bibliotecas · Maratona SBC (1ª fase) 2014

1709 - Baralho Embaralhado
1
2
3
4
5
6
p = leia_inteiro
embaralhar(a, c: Inteiro): Inteiro
  b = se 2 * a <= p então 2 * a senão 2 * a - (p + 1) fim
  retorne se b == 1 então c senão embaralhar(b, c + 1) fim
fim
escreva embaralhar(1, 1)

1715 - Handebol

Descrição do Problema: 1715 - Handebol

Categoria: Ad-Hoc · Maratona SBC (1ª fase) 2014

1715 - Handebol
1
2
3
4
5
6
n = leia_inteiros(" ")[1]
cont = para i de 1 até n
         se leia_inteiros(" ").injete(verdadeiro)((a, b) => a e b > 0) gere
           1
       fim.tamanho
escreva cont

1743 - Máquina de Verificação Automatizada

Descrição do Problema: 1743 - Máquina de Verificação Automatizada

Categoria: Ad-Hoc · Maratona SBC (2ª fase) 2014

1743 - Máquina de Verificação Automatizada
x, y = leia_texto
var compativel := verdadeiro
para i de 1 até 9 passo 2 faça
  se x[i] == y[i] então compativel := falso fim
fim
se compativel então
  escreva "Y"
senão
  escreva "N"
fim

1754 - A Sala do Tempo

Descrição do Problema: 1754 - A Sala do Tempo

Categoria: Matemática

1754 - A Sala do Tempo
n = leia_inteiro
para i de 1 até n faça
  xy = leia_textos(" ")
  x, y = BigInt(xy[1]), xy[2].inteiro
  k = (x + y - 1) div y
  se k < 2 então
    escreva 2
  senão
    escreva k
  fim
fim

1759 - Ho Ho Ho

Descrição do Problema: 1759 - Ho Ho Ho

Categoria: Iniciante

1759 - Ho Ho Ho
escreva "Ho " * (leia_inteiro - 1) + "Ho!"

1760 - Floco de Neve de Koch

Descrição do Problema: 1760 - Floco de Neve de Koch

Categoria: Matemática

1760 - Floco de Neve de Koch
1
2
3
4
5
6
var l := leia_inteiro
enquanto l <> 0 faça
  area = l ^ 2 * 0.6928203230275509
  escreva area formato "%.2f"
  l := leia_inteiro
fim

1761 - Decoração Natalina

Descrição do Problema: 1761 - Decoração Natalina

Categoria: Matemática

1761 - Decoração Natalina
1
2
3
4
5
6
7
8
9
var s := leia_texto
rg =  3.141592654/180
enquanto não eof faça
  r = s.divida(" ").mapeie(_.real)
  a, b, c = r[1], r[2], r[3]
  x = c + b * tg(a * rg)
  escreva 5 * x formato "%.2f"
  s := leia_texto
fim

1763 - Tradutor do Papai Noel

Descrição do Problema: 1763 - Tradutor do Papai Noel

Categoria: Estruturas e Bibliotecas

1763 - Tradutor do Papai Noel
natal = [
  ("alemanha", "Frohliche Weihnachten!"),
  ("antardida", "Merry Christmas!"),
  ("argentina", "Feliz Navidad!"),
  ("australia", "Merry Christmas!"),
  ("austria", "Frohe Weihnacht!"),
  ("belgica", "Zalig Kerstfeest!"),
  ("brasil", "Feliz Natal!"),
  ("canada", "Merry Christmas!"),
  ("chile", "Feliz Navidad!"),
  ("coreia", "Chuk Sung Tan!"),
  ("espanha", "Feliz Navidad!"),
  ("estados-unidos", "Merry Christmas!"),
  ("grecia", "Kala Christougena!"),
  ("inglaterra", "Merry Christmas!"),
  ("irlanda", "Nollaig Shona Dhuit!"),
  ("italia", "Buon Natale!"),
  ("japao", "Merii Kurisumasu!"),
  ("libia", "Buon Natale!"),
  ("marrocos", "Milad Mubarak!"),
  ("mexico", "Feliz Navidad!"),
  ("portugal", "Feliz Natal!"),
  ("siria", "Milad Mubarak!"),
  ("suecia", "God Jul!"),
  ("turquia", "Mutlu Noeller")
]

var pais := leia_texto
enquanto não eof faça
  x = natal.selecione(a => a.primeiro == pais)
  escolha x
    caso (_, b) :: as => escreva b
    caso _            => escreva "--- NOT FOUND ---"
  fim
  pais := leia_texto
fim

1765 - Trapézios de Natal

Descrição do Problema: 1765 - Trapézios de Natal

Categoria: Ad-Hoc

1765 - Trapézios de Natal
var t := leia_inteiro
enquanto t <> 0 faça
    para c de 1 até t faça
        dados = leia_reais(3)
        escreva "Size #{c}:"
        escreva "Ice Cream Used: {((dados[2] + dados[3]) * 5) / 2 * dados[1] formato "%.2f"} cm2"
    fim
    escreva ""
    t := leia_inteiro
fim

1766 - O Elfo das Trevas

Descrição do Problema: 1766 - O Elfo das Trevas

Categoria: Estruturas e Bibliotecas

1766 - O Elfo das Trevas
tipo Rena
  nome: Texto
  peso: Inteiro
  idade: Inteiro
  altura: Real
fim

lt = (r1, r2: Rena) =>
  se r1.peso <> r2.peso então
    r1.peso > r2.peso
  senãose r1.idade <> r2.idade então
    r1.idade < r2.idade
  senão
    r1.altura < r2.altura
  fim

t = leia_inteiro
para i de 1 até t faça
  a = leia_inteiros(" ")
  n, m = a[1], a[2]
  renas = para i de 1 até n gere
    b = leia_textos(" ")
    Rena(b[1], b[2].inteiro, b[3].inteiro, b[4].real)
  fim
  treno = renas.ordene(lt)
  escreva "CENARIO {'{'}{i}{'}'}"
  para j de 1 até m faça
    escreva "{j} - {treno[j].nome}"
  fim
fim

1768 - Árvore de Natal

Descrição do Problema: 1768 - Árvore de Natal

Categoria: Strings

1768 - Árvore de Natal
var n := leia_inteiro

enquanto n <> 0 faça
    meio = (n / 2).inteiro + 1

    para i de 1 até meio faça

        para j de i até (n / 2).inteiro faça
            imprima " "
        fim

        numeroImpar = 2 * i - 1
        para j de 1 até numeroImpar faça
            imprima "*"
        fim

        escreva ""
    fim

    var count := 1

    enquanto count <= 2 faça

        para j de count até (n / 2).inteiro faça
            imprima " "
        fim

        numeroImpar = 2 * count - 1
        para j de 1 até numeroImpar faça
            imprima "*"
        fim

        escreva ""
        count := count + 1
    fim

    n := leia_inteiro
    escreva ""
fim

1769 - CPF 1

Descrição do Problema: 1769 - CPF 1

Categoria: Ad-Hoc

1769 - CPF 1
pesos = [1,2,3,4,5,6,7,8,9]
sosep = pesos.inverta

verificadores(digitos: Lista[Inteiro])
  soma1 = digitos.zip(pesos).mapeie(a => a.primeiro * a.segundo).injete(0)(_ + _)
  soma2 = digitos.zip(sosep).mapeie(a => a.primeiro * a.segundo).injete(0)(_ + _)
  b1 = soma1 mod 11 mod 10
  b2 = soma2 mod 11 mod 10
  retorne (b1, b2)
fim

var entrada := leia_texto
enquanto não eof faça
    a123 = entrada.pegue(3)
    a456 = entrada.descarte(4).pegue(3)
    a789 = entrada.descarte(8).pegue(3)
    digitos = "{a123}{a456}{a789}".lista.mapeie(_ - '0')
    v = verificadores(digitos)
    b12 = "{v.primeiro}{v.segundo}"
    se b12 == entrada.descarte(12) então
      escreva "CPF valido"
    senão
      escreva "CPF invalido"
    fim
    entrada := leia_texto
fim

1781 - Guga e a String

Descrição do Problema: 1781 - Guga e a String

Categoria: Strings

1781 - Guga e a String
montar(posicoes, vogais, consoantes: Texto) = (d_vogais, d_consoantes: Inteiro) => faça
  t_vogais, t_consoantes, t = vogais.tamanho, consoantes.tamanho, posicoes.tamanho
  var a := se t_vogais > 0 então t_vogais - d_vogais mod t_vogais - 1 senão 0 fim
  var b := se t_consoantes > 0 então t_consoantes - d_consoantes mod t_consoantes - 1 senão 0 fim
  para i de 1 até t gere
    se posicoes[i] == 'a' então
      a := (a + 1) mod t_vogais
      vogais[a + 1]
    senão
      b := (b + 1) mod t_consoantes
      consoantes[b + 1]
    fim
  fim.junte("")
fim

é_vogal = (c: Caractere) => c == 'a' ou c == 'e' ou c == 'i' ou c == 'o' ou c == 'u'

t = leia_inteiro
para i de 1 até t faça
  escreva "Caso #{i}:"
  s = leia_texto
  vogais = s.selecione(é_vogal)
  consoantes = s.selecione(não é_vogal(_))
  var d_v, d_c := 0
  posicoes = s.lista.mapeie(c => se é_vogal(c) então 'a' senão 'b' fim).junte("")
  q = leia_inteiro
  para i de 1 até q faça
    x = leia_texto
    y = x.descarte(2).inteiro
    m = montar(posicoes, vogais, consoantes)
    escolha x.cabeca
      caso '0' => d_v := d_v + y
      caso '1' => d_c := d_c + y
      caso  _  => escreva m(d_v, d_c)
    fim
  fim
fim

1786 - CPF 2

Descrição do Problema: 1786 - CPF 2

Categoria: Ad-Hoc

1786 - CPF 2
pesos = [1,2,3,4,5,6,7,8,9]
sosep = pesos.inverta

verificadores(digitos: Lista[Inteiro])
  soma1 = digitos.zip(pesos).mapeie(a => a.primeiro * a.segundo).injete(0)(_ + _)
  soma2 = digitos.zip(sosep).mapeie(a => a.primeiro * a.segundo).injete(0)(_ + _)
  b1 = soma1 mod 11 mod 10
  b2 = soma2 mod 11 mod 10
  retorne (b1, b2)
fim

var entrada := leia_texto
enquanto não eof faça
    digitos = entrada.lista.mapeie(_ - '0')
    v = verificadores(digitos)
    a123 = entrada.pegue(3)
    a456 = entrada.descarte(3).pegue(3)
    a789 = entrada.descarte(6)
    b12 = "{v.primeiro}{v.segundo}"
    escreva "{a123}.{a456}.{a789}-{b12}"
    entrada := leia_texto
fim

1789 - A Corrida de Lesmas

Descrição do Problema: 1789 - A Corrida de Lesmas

Categoria: Iniciante

1789 - A Corrida de Lesmas
var n := leia_inteiro

enquanto n <> 0 faça
  velocidades = leia_inteiros(" ")
  maior_velocidade = velocidades.injete(0)((a, b) => se a > b então a senão b fim)

  escolha maior_velocidade
    caso velocidade se velocidade < 10 => escreva 1
    caso velocidade se velocidade < 20 => escreva 2
    caso _                             => escreva 3
  fim

  n := leia_inteiro
fim

1793 - Escada Rolante

Descrição do Problema: 1793 - Escada Rolante

Categoria: Ad-Hoc

1793 - Escada Rolante
enquanto leia_inteiro > 0 faça
  t = leia_inteiros(" ")
  d = t.divida_quando((a, b) => b - a > 10)
  var tempo := 0
  para p em d faça
    dt = 10 + p[-1] - p[1]
    tempo := tempo + dt
  fim
  escreva tempo
fim

1794 - Lavanderia

Descrição do Problema: 1794 - Lavanderia

Categoria: Ad-Hoc

1794 - Lavanderia
1
2
3
4
5
6
7
8
9
n = leia_inteiro
l = leia_inteiros(" ")
s = leia_inteiros(" ")

se (l[1] <= n) e (n <= l[2]) e (s[1] <= n) e (n <= s[2]) então
  escreva "possivel"
senão
  escreva "impossivel"
fim

1795 - Triângulo Trinomial

Descrição do Problema: 1795 - Triângulo Trinomial

Categoria: Matemática

1795 - Triângulo Trinomial
1
2
3
n = leia_inteiro
resp = [1, 3, 9, 27, 81, 243, 729, 2187, 6561, 19683, 59049, "177147", "531441", "1594323", "4782969", "14348907", "43046721", "129140163", "387420489", "1162261467", "3486784401"]
escreva resp[n + 1]

1796 - Economia Brasileira

Descrição do Problema: 1796 - Economia Brasileira

Categoria: Ad-Hoc

1796 - Economia Brasileira
1
2
3
4
5
6
7
8
q = leia_inteiro
v = leia_inteiros(" ")
insatisfeitos = v.injete(0)(_ + _)
se q - insatisfeitos > q div 2 então
  escreva "Y"
senão
  escreva "N"
fim