Você está na página 1de 8

Problems - Codeforces https://codeforces.com/group/nituVTsHQX/contest/38...

III Maratona UnBalloon

A. Alberto, traz meu balão!


1 second, 256 megabytes

Tiago, um programador muito motivado da UnB (Universidade do Balão),


tem o objetivo de resolver todas as 300 questões do CSES! Após resolver
299, ele chegou na questão mais difícil de todas, e é seu trabalho ajudá-
lo.

O problema é assim: dado um inteiro n, se este número é par o dividimos


por 2; se é ímpar, o multiplicamos por 3 e somamos 1. Quantos passos
Em sua Bugédex estão registradas N evoluções. Com elas, você pode
este algoritmo levará até que n assuma o valor 1?
ajudar Bugsy, que quer saber, dado um Bugémon inicial e uma sequência
Input de M balas (B1 , B2 , … , BM ), que Bugémon ele terá depois de dar as
A única linha de entrada contém um único inteiro n, o valor inicial de n. balas nessa ordem a seu Bugémon?

Output É garantido que todas as evoluções feitas por Bugsy estão descritas na
Imprima um único inteiro: a quantidade de passos que o algoritmo levará Bugédex.
para que n assuma o valor 1. Você é capaz de ajudar Bugsy?

input Input
A primeira linha de entrada possui o inteiro N , que indica a quantidade de
10
evoluções contidas na Bugédex (1 ≤ N ≤ 500 ).
output
Cada uma das próximas N linhas representa uma evolução da sua
6
Bugédex e contém um Bugémon P , seguido de um tipo de bala C ,
seguido de um Bugémon Q. Essa linha indica que P , ao comer a bala C ,
input evolui para Q.
28
A próxima linha possui um Bugémon S , que é o Bugémon inicial de
output Bugsy.
18
Após isso, é dada uma linha com o inteiro M – o número de balas que
Bugsy dará ao seu Bugémon inicial.
input
1
As M linhas seguintes contém B1 , B2 , … , BM – a sequência de balas
que Bugsy dará ao Bugémon inicial.
output
Todos os Bugémons e balas possuem nomes com no máximo 20
0
caracteres. Também é garantido que esses nomes possuem apenas
letras de 'a' a 'z', maiúsculas ou minúsculas.
input
1000000 Output
Imprima o nome do Bugémon que Bugsy terá após dar as M balas.
output
152 input
No primeiro caso de teste, n assumirá os seguintes valores: 10 -> 5 -> 5
Eevee TicTacLaranja Flareon
16 -> 8 -> 4 -> 2 -> 1. Eevee TicTacAzul Vaporeon
Eevee TicTacMenta Leafeon
Eevee TicTacUva Umbreon
B. Bugsy, Treinador de Bugémons Eevee TicTacManga Jolteon
Eevee
1 second, 256 megabytes 1
TicTacAzul
No UnB (Universo Bugémon), Bugsy é um Líder de Ginásio e estudioso
de Bugémons, criaturas diversificadas com poderes que muitas vezes output
fogem ao nosso senso comum. Bugsy é especialista em Bugémons do Vaporeon
tipo Inseto, mas hoje quer espandir seus horizontes e aprender sobre
todos os outros Bugémons que existem por aí. Mais especificamente, ele input
quer aprender sobre a evolução desses bichinhos. Para isso, ele pediu
6
sua ajuda! Charmander TicTacLaranja Charmeleon
Charmeleon TicTacLaranja Charizard
Sabemos que é possível evoluir um Bugémon ao dar uma Bala de Squirtle SkittlesAzul Wartortle
Evolução a ele. Existem vários tipos de balas, então é possível que um Wartortle SkittlesAzul Blastoise
Bugémon A , ao comer uma SeteBelo , evolua para o Bugémon B , mas Bulbassauro Folha Ivyssauro
se A comer um Halls, evolui para o Bugémon C (veja o exemplo 1 para Ivyssauro Folha Venussauro
Squirtle
um exemplo concreto dessa propriedade). 2
SkittlesAzul
Note que um Bugémon pode evoluir para qualquer outro, inclusive ele
SkittlesAzul
mesmo!
output
Blastoise

1 of 8 8/5/22, 10:25
Problems - Codeforces https://codeforces.com/group/nituVTsHQX/contest/38...

Cansado de resolver problemas difíceis, Dêivis resolveu criar seu próprio


input
problema, e que jeito melhor de criá-lo do que modificar um que ele já
4
conhece? É claro que Dêivis sabe resolver o problema da maior
Butterfree Duplibala DoisButterfrees
DoisButterfrees Divibala Butterfree subsequência estritamente crescente, onde é dado um array de números
Butterfree Divibala Butter inteiros, e deve-se encontrar o tamanho da maior subsequência do array
Butter Duplibala Butterfree cujos valores são estritamente crescentes. Obviamente, a modificação de
Butterfree
Dêivis deve ser pequena, para que o problema continue fácil!
4
Duplibala Eis, então, o que Dêivis pensou: em vez de um array, é dada uma árvore
Divibala
Divibala
com N vértices, em que cada aresta possui um valor de 1 a M . Para
Duplibala cada vértice u da árvore (os vértices são numerados de 1 a N ), você
deve encontrar o tamanho da maior subsequência estritamente crescente
output
da sequência de arestas no caminho de 1 a u .
Butterfree
Você consegue resolver o problema de Dêivis?

C. Congruência de frações Input


Na primeira linha de entrada, são dados dois inteiros N e M – a
1 second, 256 megabytes quantidade de vértices da árvore e o valor máximo das arestas
(2 ≤ N ≤ 2 ⋅ 105 , 1 ≤ M ≤ 2 ⋅ 105 ). Cada uma das próximas N − 1
Alberto desafiou Duda com um problema matemático: sejam a, b, c e d
linhas de entrada possui 3 inteiros: u , v e p, indicando que a árvore
quatro inteiros positivos. As frações a/b e c/d são equivalentes se
possui uma aresta de peso p ligando os vértices u e v (1 ≤ u, v ≤ N ,
a/b = c/d . Por exemplo, as frações 1/2, 2/4, 3/6, 4/8, 5/10 e 6/12
1 ≤ p ≤ M ). É garantido que essas arestas formam uma árvore.
são equivalente à fração 2/4.
Output
Dado um intervalo [x, y], Alberto pediu para Duda determinar o número
Imprima uma linha com N inteiros separados por espaço. O i-ésimo
de frações equivalentes à fração p/q cujo numerador pertença a este
inteiro deve ser igual ao tamanho da maior subsequência estritamente
intervalo. Ajude Duda a resolver o problema!
crescente de arestas no caminho de 1 a i.
Input
A entrada é composta por duas linhas. input
A primeira linha da entrada contém os valores de x e y 5 10
1 2 5
(1 ≤ x ≤ y ≤ 100 ), separados por um espaço em branco.
1 3 7
2 4 10
A segunda linha contém os valores de p e q (1 ≤ p, q ≤ 100), separados
2 5 3
por um espaço em branco.
output
Output
0 1 1 2 1
Imprima, em uma linha, o número de frações equivalentes à p/q cujo
numerador esteja no intervalo [x, y].
input
input 7 6
1 2 3
1 5 2 3 4
2 4 3 4 6
4 5 1
output 2 6 1
5 6 7 2

output
input 0 1 2 3 3 1 2
8 10
3 2

output E. Enzo, o Mágico


1 1 second, 256 megabytes

O Mágico Enzo fará uma apresentação na UnB (Universidade de


input
Baralhos), e para isso está treinando uma forma de embaralhar cartas
6 9 chamado Embaralhamento Mágico.
5 8
Vamor denotar um baralho de n cartas como um vetor a de tamanho n.
output
O embaralhamento funciona da seguinte forma: separamos os elementos
0 de posições ímpares (indexado em 1) no vetor l e os elementos de
posições pares no vetor r . Depois concatenamos r em l (a = l + r).
No primeiro caso, as frações 1/2, 2, 4, 3/6, 4/8, 5/10 são equivalentes
a 2/4 e seus numeradores estão todos no intervalo [1, 5]. Um truque conhecido é embaralhar o baralho vezes o suficiente para que
ele volte ao estado inicial. Ajude Enzo e calcule quantos
No segundo caso, 9/6 é a única fração equivalente à 3/2 cujo
Embaralhamentos Mágicos é necessário para que um baralho de n
numerador está no intervalo dado.
cartas distintas volte ao seu estado inicial.
No terceiro caso, nenhuma fração equivalente à 5/8 tem denominador no
Input
intervalo [6, 9].
A única linha de entrada contém um inteiro par n (1 ≤ n ≤ 106 ) , o
tamanho do baralho.
D. Dêivis e Subsequência
Output
1 second, 256 megabytes Imprima um único inteiro positivo: a menor quantidade de
Embaralhamentos Mágicos para que o baralho volte a seu estado inicial.

2 of 8 8/5/22, 10:25
Problems - Codeforces https://codeforces.com/group/nituVTsHQX/contest/38...

input input
8 1

output output
3 1

input input
6 2

output output
4 3

input input
1000000 4

output output
180 12

Vamos denotar as 8 cartas do baralho por [1, 2, 3, 4, 5, 6, 7, 8] . O


input
embaralhamento leva este baralho ao vetor [1, 3, 5, 7, 2, 4, 6, 8] . A
123456
sequência inteira fica:
output
[1, 2, 3, 4, 5, 6, 7, 8] ->
7620877150
[1, 3, 5, 7, 2, 4, 6, 8] ->
No segundo caso de teste, existem 3 triângulos diferentes que são
[1, 5, 2, 6, 3, 7, 4, 8] -> fibonachos, e utilizam no máximo o segundo número de fibonacci:
[1, 2, 3, 4, 5, 6, 7, 8] ,
(1, 1, 1)
dando a resposta 3.
(2, 2, 1)

F. Fibonachos (2, 2, 2)
1 second, 256 megabytes No terceiro caso de teste, pode-se usar no máximo o quarto número de
fibonacci. Um dos 12 triângulos válidos, possui os lados (5, 5, 3).
José foi convidado para uma festa de matemáticos mexicanos, e para
ajudar com a comida, ele decidiu preparar fibonachos! Um fibonacho,
assim como um nacho, possui formato triangular com área positiva, G. Greg and Array?
contudo, cada um dos lados desse triângulo precisa ser um número de
2 seconds, 256 megabytes
fibonacci.
Você tem um vetor v de tamanho n (v1 , v2 , … , vn ), e deve realizar dois
tipos de consultas. Em cada consulta, consideraremos o vetor psum
definido por psum[i] = v[1] + v[2] + ⋯ + v[i] para todo i entre 1 e n.
Os tipos de consultas são dados abaixo:

• 1 i x : atribua o elemento de v na posição i para x (1 ≤ i ≤ n,


−108 ≤ x ≤ 108 ), ou
• 2 l r : imprima a soma dos elementos das posições l até r do vetor
psum.

Você não lembra exatamente quem é Greg, mas o nome soa familiar,
talvez o array fosse dele originalmente...
Vamos admitir que o primeiro e o segundo número de fibonacci são 1 e 2,
respectivamente. O i-ésimo número de fibonacci fi é definido como
Input
fi−1 + fi−2 , para i > 2. A primeira linha da entrada contém dois inteiros n e q (2 ≤ n ≤ 105 ;
1 ≤ q ≤ 105 ), representando o tamanho do array e a quantidade de
1, 2, 3, 5, 8, 13, 21, 34, 55... consultas, respectivamente.

Enquanto preparava os fibonachos, José se perguntou: quantos A segunda linha da entrada contém n inteiros v1 , v2 , … , vn
fibonachos diferentes existem, caso todos os lados tenham tamanho (−108 ≤ vi ≤ 108 ), representando os valores iniciais do array.
menor ou igual ao n-ésimo número de fibonacci? Ajude José a descobrir
As próximas q linhas descrevem as consultas, em um dos dois formatos:
a resposta, para que ele possa usar esse problema para puxar assunto
com os matemáticos mexicanos!
• 1 i x : modifique o elemento na posição i para x (1 ≤ i ≤ n,
Input −108 ≤ x ≤ 108 ), ou
A entrada consiste de um único valor inteiro n (1 ≤ n ≤ 106 ), • 2 l r : imprima a soma dos elementos das posições l até r do vetor
informando que os lados do fibonacho podem, no máximo, serem iguais psum.
ao n-ésimo número de fibonacci.
Output
Output Para cada consulta do tipo 2, imprima uma linha contendo um único
A saída consiste de um único valor, a quantidade de fibonachos diferentes
inteiro: a soma desejada.
que existem, utilizando apenas lados de no máximo o n-ésimo fibonacci.

3 of 8 8/5/22, 10:25
Problems - Codeforces https://codeforces.com/group/nituVTsHQX/contest/38...

input I. Ipês
7 5 1 second, 256 megabytes
1 2 3 4 5 6 7
2 1 7 A Chefia do Departamento de Ciência da Computação está planejando
1 1 5 plantar N mudas de ipês ao redor do Prédio CIC/EST. Os alunos Lucas
2 1 7
1 7 1
Sala, Victor Hugo e Henrique ficaram bastante animadoo com essa
2 1 7 notícia e decidiram cavar antecipadamente M buracos, apostando que
essa é a quantidade mínima de mudas que devem chegar do viveiro de
output
plantas. Os buracos são numerados de 1 a N de forma a demarcar a
84 plantação dos ipês no sentido horário ao redor do Prédio CIC/EST,
112
começando sempre pela entrada (fachada). Logo, os ipês a serem
106
plantados nos primeiros e últimos buracos ficarão mais visíveis à
comunidade, que poderá desfrutar de uma bela vista para selfies, tiktoks
input
e churrascos.
5 3
15 5 6 6 13 Finalmente as mudas de ipês chegaram ao Prédio CIC/EST para serem
1 3 14 plantadas pelos jardineiros da UnB. Acontece que os jardineiros não
1 3 15
pensaram em uma estratégia específica para plantar as N mudas nos
2 2 3
buracos cavados pelos voluntários. Sua tarefa consiste em ajudar os
output jardineiros informando a quantidade de maneiras distintas com que os N
55 ipês poderão ser plantados nos M buracos existentes, considerando
sua ordem.

H. Hora do Almoço Input


A entrada consiste de uma única linha contendo dois inteiros N e M
2 seconds, 256 megabytes
(1 ≤ M ≤ N ≤ 20) separados por espaço em branco indicando a
Chegou a hora do almoço no RU (Restaurante Uniformemente quantidade de mudas de ipês recebidas e a quantidade de buracos
distribuido)! Mas devido ao grande tempo de aulas onlines, temos 5 cavados ao redor do Prédio CIC/EST, respectivamente.
semestres de "calouros" e todas as filas estão enormes! Foi ai que o Output
restaurante decidiu sortear alguns felizardos para que pudessem pular a Imprima um único inteiro com a resposta para o problema — a quantidade
fila. de maneiras distintas que os N ipês podem ser plantados pelos
Quirino e Vilsu chegaram na etapa final do sorteio e, para decidir quem jardineiros nos M buracos.
dos dois poderá pular a fila, o seguinte sorteio será feito.
input
Dado um vetor a de n elementos, um número será sorteado entre 1 e m
4 2
com distribuição uniforme. Se este número for coprimo (isto é, tem MDC =
1) com todos os números do array a, Quirino vence, caso contrário Vilsu output
vence. 12

O RU te contratou para fazer um programa que calcula a probabilidade de


Quirino vencer. input
5 3
Input
A primeira linha contém dois inteiros n e m output
5 6
(1 ≤ n ≤ 2 ⋅ 10 , 1 ≤ m ≤ 5 ⋅ 10 ) , o tamanho do array a e o limite 60
superior do sorteio, respectivamente.
input
A segunda linha contém n inteiros ai separados por espaço
a1 , a2 , … , an (′ 1′ ≤ ai ≤′ m′ ). 6 4

output
Output
Imprima um único número real, a probabilidade do Quirino vencer, isto é, 360
o número sorteado ser coprimo com cada número do array a .
No primeiro exemplo de teste, temos 4 ipês e 2 buracos. Supondo o
A resposta é considerada correta se os erros absoluto e relativo entre a conjunto de ipês {A, B, C, D} , eles podem ser plantados de seis
saida e a resposta do juiz for menor ou igual a 10−6 . maneiras distintas: AB, AC , AD, BA, BC , BD, CA, CB, CD, DA,
DB e DC.
input
3 20 J. Juntos para sempre?
2 3 10
10.0 s, 256 megabytes
output
0.3000000000 Maria Fernanda nasceu no planeta Origamus e quando chegou na Terra
se encantou por astrologia. Agora que MF voltou ao seu planeta natal,
input planeja encontrar um candidato amoroso usando esse sistema.

1 1000000 Para montar o mapa astral, consideramos somente a diferença angular


2 para Terra desconsiderando distâncias. Com a Terra como ponto de
output referência, construimos o círculo da orbita do Sol pela terra e chamamos
de Horizonte. Ao nascer uma pessoa, pela localização, verificamos em
0.5000000000
qual ângulo do Horizonte o Sol nasce e o chamamos de Ascendente.
No primeiro caso de teste, os 6 números coprimos com 2, 3 e 10 são: Dividimos as angulações do horizonte em doze partes iguais de 30∘ a
1, 7, 11, 13, 17, 19. partir do Ascendente.

4 of 8 8/5/22, 10:25
Problems - Codeforces https://codeforces.com/group/nituVTsHQX/contest/38...

input
2
3 3 2 13
1 3
1 2 1
1 1 2
2 2
2 1
1 1 1
2 1
2 2
1 1 2
2 2
1 2 1
2 1
2 0
2 2
Representação do Horizonte, Ascendente e separação em casas.
6 3 4 7
Por exemplo, se o Ascendente está em 47∘ e Marte está em 88∘ , 1 3 2 2
dizemos que Marte está na segunda casa. Pois: 1 2 4
1 1 1
• A primeira casa será angulações em [47∘ , 77∘ ) 1 3 3
1 4 2
• A segunda casa será angulações em [77∘ , 107∘ ) 2 0
• A terceira casa será angulações em [107∘ , 137∘ ) 2 2
2 5
E assim por diante. Cada combinação de casa e astro representa algum output
traço de personalidade.
Yes
Agora Maria Fernanda vai adaptar esses conceitos para seu planeta. Em No
seu planeta o círculo não tem 360 graus, mas sim N , e ela planeja dividir No
igualmente em k partes. MF selecionou A astros e determinou a casa No
que cada astro tem de estar para que seu candidato tenha a Yes
No
personalidade perfeita. No
Yes
MF selecionou seus candidatos amorosos, descobriu local de nascimento
Yes
e horário. Logo depois, recuperou registros de localização dos astros. Ela No
organizou cronologicamente tudo em eventos nos seguintes formatos: No

• 1 a b , indicando que o astro a mudou para o ângulo b .


• 2 c, indicando que um candidato nasceu com ascendente no ângulo
K. Kaindo na Brincadeira
c. 1 second, 256 megabytes

Os eventos foram organizados de tal forma que os primeiros A eventos Bruno estava tranquilo jogando golfe na UnB (Universidade dos Buracos)
denotam a localização de todos os astros. quando seus amigos Pedro e Gustavo decidiram fazer uma brincadeira. O
campo de golfe é representado por uma reta infinita, inicialmente sem
Para todo candidato, evento começando com 2, informe se ele tem o
buracos. Como aluno da UnB, você deve fazer um programa que simule o
mapa astral desejado.
jogo deles para garantir que nenhum problema aconteça.
Input A cada minuto, um dos seguintes eventos acontece:
A primeira linha da entrada contem um inteiro positivo T (1 ≤ T ≤ 105 ) ,
o número de casos de teste indenpendentes. • 1 p, Pedro adiciona um buraco na posição p (se a posição p já tiver
A primeira linha de cada caso de teste contém quatro inteiros um buraco, ignore).

N(3 ≤ N ≤ 105 ), k(3 ≤ k ≤ N), A(1 ≤ A ≤ 105 ) e • 2 k , Gustavo puxa a grama com tanta força que todos os buracos
M(A < M ≤ 3 ∗ 105 ). É garantido que k divide N . são deslocados em k posições para a direita (note que k pode ser
negativo; neste caso o deslocamento se dá para a direita).
A segunda linha de cada caso de teste contém A inteiros,
• 3 p C , Bruno da uma tacada com a bola a partir da posição p na
di (1 ≤ di ≤ k), com a casa desejada de cada astro.
direção C , e seu programa deve imprimir a posição do buraco no
As próximas M linhas de cada caso de teste descrevem os eventos de qual a bola cairá, ou −1 se a bolinha nunca cairá num buraco.
observação. A i-ésima dessas começará com um inteiro
tipo(1 ≤ tipo ≤ 2) . Considere que no evento do tipo 3, Bruno acerta uma bolinha com uma
força monstruosa, de forma que a bolinha seguirá naquela direção por
• Se tipo = 1 , haverá outros dois inteiros a(1 ≤ a ≤ A) todo o sempre (ou até cair em algum buraco).
b(0 ≤ b < N). Resolva os q eventos na ordem dada para que os rapazes possam
• Se tipo = 2 , haverá mais um inteiro c(0 ≤ c < N). recuperar as bolinhas e devolvê-las e evitar problemas com a UnB.

É garantido que os primeiros A eventos terão localização de todos os Input


astros. A primeira linha de entrada contém um inteiro q (1 ≤ q ≤ 105 ), o número
de eventos a serem processados.
É garantido que a soma total de M , para todos os casos de teste, não
excede 2 ∗ 106 . As próximas q linhas descrevem um evento em cada linha, em um dos
três formatos:
Output
Todos os casos de teste são completamente independentes. Para todo • 1 p, onde p é um inteiro (−1012 ≤ p ≤ 1012 ).
evento do tipo 2, imprima 'Yes' se o candidato tem a personalidade
• 2 k , onde k é um inteiro (−1012 ≤ k ≤ 1012 ).
desejada e 'No' caso contrário.
• 3 p C , onde p é um inteiro e C um caracetere (−1012 ≤ p ≤ 1012 ;
C =′ E ′ ou C =′ D′ ). O caractere 'D' representa direita, e 'E'

5 of 8 8/5/22, 10:25
Problems - Codeforces https://codeforces.com/group/nituVTsHQX/contest/38...

representa esquerda. input


Output 5 6
#.####
Para cada evento do tipo 3, imprima uma linha com um único inteiro: a
#..###
posição do buraco no qual a bolinha cairá, ou −1 caso a bolinha não caia #...##
em um buraco. ##..##
###..#
input output
5 3
1 0
1 10
3 3 D input
1 8 4 4
3 3 D ....
output ...#
....
10 ....
8
output
input 6

6
1 0 input
1 10 2 4
3 3 D ....
2 -9 ....
3 3 D
3 2 E output
output 0

10
Para o primeiro caso de teste, existem 3 posições diferentes onde se
-1
1 pode recortar um 'L':

L. Logo do Leo
3 seconds, 256 megabytes

Leonardo quer montar uma logo com a letra inicial do seu nome, para
colar no seu notebook. Para isso, ele quer recortar um 'L' de um papel que
possui. Contudo, ele quer que o 'L' seja todo da cor branca, e o papel
possui regiões pintadas de preto.

A folha pode ser representada por uma matriz N x M , onde cada


elemento representa a cor daquela célula ('.' para branco, '#' para preto), e
o elemento (1, 1) se encontra no canto esquerdo inferior. Leonardo
deseja recortar um 'L' composto de 4 células: (x, y) , (x, y + 1),
(x, y + 2) e (x + 1, y). O 'L' não pode ser rotacionado.
Considerando que todas as células precisam ser brancas e estar contidas M. Mudança VICTORiosa
na matriz, ajude Leo a identificar quantas posições distintas é possível se
recortar esse 'L', dada uma matriz. 1 second, 256 megabytes

Input Maxwell e Pablo estão ajudando Victor em sua mudança. A parede de


A primeira linha da entrada consiste de dois números inteiros N e M seu quarto tem m + 2 tomadas, e Victor tem n aparelhos para ligar, mas
(1 ≤ N, M ≤ 2000), representando a altura e a largura da folha, eles notaram um problema: apenas duas tomadas estão energizadas.
respectivamente. Para ajudar, eles vão consertar a fiação das tomadas.

As N linhas seguintes, contém M caracteres cada, representando a cor


daquela célula, '.' caso seja branca, '#' caso seja preta.

Output
A saída consiste de um único valor inteiro: a quantidade de posições
diferentes em que Leo consegue recortar um 'L'.

6 of 8 8/5/22, 10:25
Problems - Codeforces https://codeforces.com/group/nituVTsHQX/contest/38...

Mais formalmente, a parede é representada como uma reta onde cada A primeira linha contém um único inteiro n (3 ≤ n ≤ 105 ), o tamanho da
posição inteira de 0 até m + 1 possui uma tomada. As tomadas string binária representando o estado inicial da fita de LEDs.
energizadas estão nas posições 0 e m + 1 e os aparelhos estão
distribuidos entre as posições 1 e m . Cada tomada está ligada por um fio Output
às duas tomadas adjacentes, e inicialmente todos os fios estão Imprima −1 caso seja impossível ligar todos os LEDs ao mesmo tempo.
quebrados. Em 1 minuto, eles conseguem consertar um fio que conecta Caso contrário, imprima um único inteiro representando a menor
duas tomadas adjacentes. Quando uma tomada está com a fiação inteira quantidade de apertadas em interruptores para ligar todos os LEDs
consertada até a tomada 0 ou até m + 1 então esta tomada está simultaneamente.
energizada.
input
Ajude-os e calcule o menor tempo possível para energizar todas as
6
tomadas que estão nas posições dos aparelhos de Victor. 011000
Input output
A primeira linha contém dois inteiros n e m
3
(1 ≤ n ≤ 1 ⋅ 105 , n + 2 ≤ m ≤ 5 ⋅ 1012 ), o número de aparelhos e o
limite superior das posições dos aparelhos, respectivamente.
input
A segunda linha contém n inteiros ai separados por espaço 5
a1 , a2 , … , an (1 ≤ ai ≤ m), as distintas posições dos aparelhos 11001
eletrônicos. output
Output -1
Imprima um único número inteiro: o menor tempo para energizar as
tomadas nas posições dos aparelhos de Victor. input
6
input 010110
5 15 output
1 2 5 11 13
4
output
10 No primeiro caso de teste temos inicialmente a fita 011000. As 3
operações são as seguintes:
input
• 011000 (aperta interruptor 2) ->
5 20
• 100000 (aperta interruptor 3) ->
19 14 12 18 13
• 111100 (aperta interruptor 6) ->
output
• 111111
9
e 3 operações é a menor quantidade possível de operações para ligar
A imagem abaixo mostra quais fios consertar no primeiro caso de teste todos os LEDs simultâneamente.
para ter todos energizados com resposta 10. No segundo caso de teste é impossível deixar todos os LEDs ligados
simultâneamente.

O. Outro Caminho
1 second, 256 megabytes

Hoje é o dia da maratona! Vinicius precisa correr para pegar o precioso


coffee break a tempo.

Representando o mapa de Brasília como um grafo, Vinicius sairá da UnB,


que fica no vértice 1, e precisa chegar na padaria, que fica no vértice n.
As estradas são representadas por arestas não direcionadas entre os
N. Natal Adiantado vértices, e o peso w de cada aresta representa o tempo para atravessá-
la.
1 second, 256 megabytes
Como a pressa é inimiga da perfeição, quando Vinicius está em um
Os engenheiros mais brabos da UnB (Universidade de Bugs), Wallace, vértice de grau n ele acaba se confundindo e pega uma aresta aleatória
Pedro e Augusto, estão trabalhando em uma árvore de natal para a com distribuição uniforme, i.e., cada aresta tem probabilidade 1/n de ser
Maratona de Natal de 2022. Mas todos sabem que, na engenharia, pega.
algumas vezes corrigir um problema cria mais dois.
Você deve salvar o coffee break e calcular a probabilidade de Vinicius
A árvore de natal tem uma fita de LED representada por uma string pegar algum menor caminho de 1 até n. Como este número pode ser
binária; o caractere '1' representa um LED ligado e um caractere '0'
bem pequeno (;-;), calcule a probabilidade modulo 109 + 7 .
representa um LED desligado. Ao apertar um interruptor para ligar ou
desligar o LED na posição i, os LEDS nas posições adjacentes também Input
mudam de estado (desligam se estavam ligados ou desligam se estavam A primeira linha de entrada contém dois inteiros n e m (2 ≤ n ≤ 105 ;
ligados). n − 1 ≤ m ≤ min(2 ⋅ 105 , n(n + 1)/2 ), o número de vértices e
arestas do grafo, respectivamente.
Para evitar uma quantidade descontrolável de problemas, você deve
ajudar os engenheiros a calcular o menor número de vezer que eles Cada uma das próximas m linhas contém três inteiros u , v e w
devem apertar interruptores para deixar todos os LEDs ligados (1 ≤ u, v ≤ n , u ≠ v ; 1 ≤ w ≤ 109 ), que representam uma aresta
simultâneamente, ou dizer se é impossível. entre os vértices u e v de peso w .
Input Output

7 of 8 8/5/22, 10:25
Problems - Codeforces https://codeforces.com/group/nituVTsHQX/contest/38...

Imprima uma única linha contendo um número inteiro: a probabilidade O grafo abaixo corresponde ao caso de teste 1. Como fração, a
módulo 109 + 7 de, ao escolher arestas aleatórias, Vinicius andar por probabilidade de Vinicius pegar um menor caminho é 2/9.
algum menor caminho de 1 até n.

Formalmente, seja M = 109 + 7. Pode ser provado que a resposta pode


ser expressa como uma fração irredutível p/q, onde p e q são inteiros e
q ≢ 0(mod M). Imprima o inteiro igual a pq −1 (mod M), onde q −1 é o
inverso multiplicativo de q módulo M .

input
6 8
1 2 2
1 3 1
3 2 2
3 4 1
2 6 1
4 6 1
4 5 1
5 6 1

output
222222224

Codeforces (c) Copyright 2010-2022 Mike Mirzayanov


The only programming contests Web 2.0 platform

8 of 8 8/5/22, 10:25

Você também pode gostar