3300
Faixa de problemas: 3300-3399
Total resolvido: 27 de 100 problemas
Problemas não resolvidos (73)
3304 , 3305 , 3310 , 3314 , 3316 , 3317 , 3318 , 3319 , 3320 , 3321 , 3322 , 3323 , 3324 , 3325 , 3326 , 3327 , 3328 , 3329 , 3330 , 3331 , 3332 , 3333 , 3334 , 3335 , 3336 , 3337 , 3340 , 3341 , 3345 , 3347 , 3349 , 3350 , 3351 , 3352 , 3353 , 3354 , 3355 , 3356 , 3359 , 3360 , 3361 , 3362 , 3363 , 3364 , 3365 , 3366 , 3367 , 3368 , 3370 , 3371 , 3372 , 3373 , 3374 , 3375 , 3376 , 3378 , 3379 , 3380 , 3381 , 3382 , 3383 , 3385 , 3386 , 3387 , 3388 , 3389 , 3390 , 3391 , 3392 , 3393 , 3394 , 3395 , 3396
3300 - Números Má Sorte Recarregados
Descrição do Problema: 3300 - Números Má Sorte Recarregados
Categoria: Strings
3300 - Números Má Sorte Recarregados a = leia_texto
b = a . lista . zip ( a . cauda ) . selecione ( _ . primeiro == '1' ) . selecione ( _ . segundo == '3' ) . tamanho
se b > 0 então
escreva " { a } es de Mala Suerte"
senão
escreva " { a } NO es de Mala Suerte"
fim
3301 - Sobrinho do Meio
Descrição do Problema: 3301 - Sobrinho do Meio
Categoria: Iniciante · Olimpíada IFSULDEMINAS 2021
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 então
escreva "zezinho"
senãose z < h e h < l ou l < h e h < z então
escreva "huguinho"
senão
escreva "luisinho"
fim
3302 - Resposta Certa
Descrição do Problema: 3302 - Resposta Certa
Categoria: Iniciante · Olimpíada IFSULDEMINAS 2021
3302 - Resposta Certa var n := leia_inteiro
enquanto n > 0 faça
numeros = leia_inteiros ( n )
para i de 1 até n faça
escreva "resposta { i } : { numeros [ i ] } "
fim
n := leia_inteiro
fim
3303 - Palavrão
Descrição do Problema: 3303 - Palavrão
Categoria: Iniciante · Olimpíada IFSULDEMINAS 2021
3303 - Palavrão palavra = leia_texto
se palavra . tamanho >= 10 então
escreva "palavrao"
senão
escreva "palavrinha"
fim
3306 - Consulta e Alteração
Descrição do Problema: 3306 - Consulta e Alteração
Categoria: Estruturas e Bibliotecas · Olimpíada IFSULDEMINAS 2021
3306 - Consulta e Alteração mdc ( x , y : Inteiro )
var a , b := x , y
enquanto b <> 0 faça
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ê!
Categoria: Ad-Hoc · Olimpíada IFSULDEMINAS 2021
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
Categoria: Matemática · Olimpíada IFSULDEMINAS 2021
3308 - Elevador n = leia_inteiro
para i de 1 até 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
Categoria: Ad-Hoc · Olimpíada IFSULDEMINAS 2021
3309 - Felizes são estes Números feliz ( n : Inteiro ): Lógico
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
Categoria: Strings · Olimpíada IFSULDEMINAS 2021
3311 - Hudinho e o seu Trabalho 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
Categoria: Matemática · Olimpíada IFSULDEMINAS 2021
3312 - Imberbe Matemático var z := BigInt ( 1 )
fat = para i de 1 até 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 até 100 gere primos . contém ( i ) fim
n = leia_inteiro
x = leia_inteiros ( " " )
para a em x se primo [ a ] faça
escreva " { a } ! = { fat [ a ] } "
fim
3313 - Jogo de Palavras
Descrição do Problema: 3313 - Jogo de Palavras
Categoria: Strings · Olimpíada IFSULDEMINAS 2021
3313 - Jogo de Palavras rot ( a : Texto , f : Lógico )
tam = a . tamanho
var x := a + a
var valor := x . pegue ( tam )
enquanto x . tamanho >= tam faça
m = x . pegue ( tam )
se f e m < valor ou não f e m > valor então
valor := m
fim
primeiro = valor [ 1 ]
se f então
x := x . cauda . descarte_enquanto ( _ > primeiro )
senão
x := x . cauda . descarte_enquanto ( _ < primeiro )
fim
fim
retorne valor
fim
var n := 0
var s := leia_texto
enquanto s <> "*" faça
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
Categoria: Ad-Hoc · Olimpíada IFSULDEMINAS 2021
3315 - Língua do Computador d2b ( n : Inteiro ): Texto = se n > 0 então " { d2b ( n div 2 ) }{ n mod 2 } " senão "" fim
a = para i de 1 até 4 gere
leia_inteiros ( " " ) . injete ( 0 )( _ + _ )
fim
d = a . ordene [ -1 ]
escreva " { d } = { d2b ( d ) } "
3338 - Jogo de Páscoa
Descrição do Problema: 3338 - Jogo de Páscoa
Categoria: Excluído
3338 - ~~Jogo de Páscoa~~ 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
Categoria: Matemática
3339 - Carina 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
Categoria: Iniciante
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
Categoria: Iniciante
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
Categoria: Iniciante
3346 - Flutuação do PIB
Descrição do Problema: 3346 - Flutuação do PIB
Categoria: Iniciante
3346 - Flutuação do PIB 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
Categoria: Iniciante
3348 - Jogo das Aranhas 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
Categoria: Estruturas e Bibliotecas
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 então
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
Categoria: Strings
3358 - Sobrenome Não é Fácil n = leia_inteiro
para i de 1 até 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 então
escreva " { s } nao eh facil"
senão
escreva " { s } eh facil"
fim
fim
3369 - KIARA is a Recursive Acronym
Descrição do Problema: 3369 - KIARA is a Recursive Acronym
Categoria: Ad-Hoc · Maratona SBC (2ª fase) 2021
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 não 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??
Categoria: Ad-Hoc
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'
então 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
3384 - Blocos de madeira
Descrição do Problema: 3384 - Blocos de madeira
Categoria: Ad-Hoc
3384 - Blocos de madeira valido ( a , b : Caractere ) =
(( a == '1' ou a == '3' ) e ( b == '4' ou b == '5' )) ou
(( a == '4' ou a == '6' ) e ( b == '2' ou b == '3' )) ou
(( a == '5' ou a == '7' ) e ( b == '8' )) ou
(( a == '8' ) e ( b == '6' ou b == '7' ))
validar ( s : Texto , n : Inteiro ): Lógico =
n == 1 ou valido ( s [ n -1 ], s [ n ]) e validar ( s , n - 1 )
var i := 1
var a := leia_texto
enquanto a <> "0" faça
v = a [ 1 ] == '1' e a [ -1 ] == '2' e validar ( a , a . tamanho )
escreva " { i } . { se v então "VALID" senão "NOT" fim } "
i := i + 1
a := leia_texto
fim
3397 - Melhor do Multiverso
Descrição do Problema: 3397 - Melhor do Multiverso
Categoria: Ad-Hoc · Olimpíada IFSULDEMINAS 2022
3397 - Melhor do Multiverso pergunta = leia_texto
escreva "eu"
3398 - Moeda Convertida
Descrição do Problema: 3398 - Moeda Convertida
Categoria: Ad-Hoc · Olimpíada IFSULDEMINAS 2022
3398 - Moeda Convertida 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!
Categoria: Ad-Hoc · Olimpíada IFSULDEMINAS 2022
3399 - Meu nome é Enésimo! in = leia_inteiros ( " " )
a , b , c , n = in [ 1 ], in [ 2 ], in [ 3 ], in [ 4 ]
enesimo = ( n - 1 ) * ( b - a ) + a
escreva enesimo