·
Engenharia Elétrica ·
Linguagens de Programação
Send your question to AI and receive an answer instantly
Recommended for you
3
Trabalho - Implementação de Tads 2022-1
Linguagens de Programação
UFMG
4
Trabalho - Truco Mineiro C 2022 2
Linguagens de Programação
UFMG
15
5 Vpl s - Linguagens de Programação 2022 2
Linguagens de Programação
UFMG
5
Trabalho - Xadrez C 2022 2
Linguagens de Programação
UFMG
5
Trabalho - Truco Mineiro C 2022 2
Linguagens de Programação
UFMG
5
Trabalho - Truco Mineiro C 2022-2
Linguagens de Programação
UFMG
2
Exercício 8 - Linguagens de Programação 2022 2
Linguagens de Programação
UFMG
18
Exercício 1 - Linguagens de Programação 2022 2
Linguagens de Programação
UFMG
3
Trabalho Prático 3 - Menságens Assíncronas
Linguagens de Programação
UFMG
2
P2 - Linguagens de Programação 2021-2
Linguagens de Programação
UFMG
Preview text
Bonde, Tiago Bonde Um agente secreto brasileiro está neste momento em um grande perigo: Precisa desarmar uma bomba localizada diretamente abaixo do prédio do Departamento de Ciência da Computação (DCC) da UFMG. O vilão, Mário Traquina, é um velho conhecido da comunidade criptográfica: Ele sempre produz códigos para suas armadilhas com uma característica peculiar. Tal característica é que o código é sempre constituído por uma sequência de N cadeias de 10 letras minúsculas, S1, S2, S3…Sn. O plano de Mário é no futuro conseguir concatenar cadeias de sequências para dificultar cada vez mais a decodificação. No entanto, para que o código seja válido, a cadeia de sequência requer obediência a uma regra bastante fundamental: nenhuma cadeia da sequência pode ser subcadeia de uma concatenação de duas cadeias anteriores na sequência. Ou seja, o código não será válido se existirem 3 inteiros a,b e k tais que: ● 1 ≤ a < k ≤ N, 1 ≤ b < k ≤ N (a pode ser igual a b); e ● Sk é subcadeia da concatenação SaSb. Nosso agente secreto sabe que um código como S={aaaaaaabbb,yyuudiwwkl, kkfidaaooa} atende a regra de formação, mas que se adicionarmos a cadeia aooaaaaaaa no final da sequência, o código resultante S‘={aaaaaaabbb,yyuudiwwkl, kkfidaaooa, aooaaaaaaa}, será inválido, pois S‘4 é subcadeia da concatenação S‘3S‘1. A nossa tarefa, então, é ajudar o agente secreto a livrar a comunidade acadêmica de uma ameaça em potencial. Faremos isso ajudando a identificar se os códigos que ele está vendo são válidos ou não. Entrada A primeira linha da entrada contém um inteiro N, representando o número de cadeias na sequência. As N linhas seguintes contêm, cada uma, uma cadeia de 10 letras minúsculas, definindo a sequência de cadeias do código. Saída Seu programa deve imprimir uma linha contendo a cadeia "ok" caso o código seja válido, ou contendo a primeira cadeia na sequência que invalida o código. Quer dizer, contendo Sk onde k é o menor possível tal que Sk seja subcadeia de uma concatenação de duas cadeias anteriores na sequência. Restrições 1 ≤ N ≤ 10000 Exemplos Entrada 3 aaaaaaabbb yyuudiwwkl kkfidaaooa Saída ok Entrada 4 aaaaaaabbb yyuudiwwkl kkfidaaooa aooaaaaaaa Saída aooaaaaaaa Entrada 1 jfjshiddds Saída ok Entrada 2 abcdefghij abcdefghij Saída abcdefghij Entrada 8 xfwvijuydq hcprvezofg hwykagqawu givfzndqpy yvfiqgadfc wuhcprvezo qaswiksscl uchskpkcit Saída wuhcprvezo
Send your question to AI and receive an answer instantly
Recommended for you
3
Trabalho - Implementação de Tads 2022-1
Linguagens de Programação
UFMG
4
Trabalho - Truco Mineiro C 2022 2
Linguagens de Programação
UFMG
15
5 Vpl s - Linguagens de Programação 2022 2
Linguagens de Programação
UFMG
5
Trabalho - Xadrez C 2022 2
Linguagens de Programação
UFMG
5
Trabalho - Truco Mineiro C 2022 2
Linguagens de Programação
UFMG
5
Trabalho - Truco Mineiro C 2022-2
Linguagens de Programação
UFMG
2
Exercício 8 - Linguagens de Programação 2022 2
Linguagens de Programação
UFMG
18
Exercício 1 - Linguagens de Programação 2022 2
Linguagens de Programação
UFMG
3
Trabalho Prático 3 - Menságens Assíncronas
Linguagens de Programação
UFMG
2
P2 - Linguagens de Programação 2021-2
Linguagens de Programação
UFMG
Preview text
Bonde, Tiago Bonde Um agente secreto brasileiro está neste momento em um grande perigo: Precisa desarmar uma bomba localizada diretamente abaixo do prédio do Departamento de Ciência da Computação (DCC) da UFMG. O vilão, Mário Traquina, é um velho conhecido da comunidade criptográfica: Ele sempre produz códigos para suas armadilhas com uma característica peculiar. Tal característica é que o código é sempre constituído por uma sequência de N cadeias de 10 letras minúsculas, S1, S2, S3…Sn. O plano de Mário é no futuro conseguir concatenar cadeias de sequências para dificultar cada vez mais a decodificação. No entanto, para que o código seja válido, a cadeia de sequência requer obediência a uma regra bastante fundamental: nenhuma cadeia da sequência pode ser subcadeia de uma concatenação de duas cadeias anteriores na sequência. Ou seja, o código não será válido se existirem 3 inteiros a,b e k tais que: ● 1 ≤ a < k ≤ N, 1 ≤ b < k ≤ N (a pode ser igual a b); e ● Sk é subcadeia da concatenação SaSb. Nosso agente secreto sabe que um código como S={aaaaaaabbb,yyuudiwwkl, kkfidaaooa} atende a regra de formação, mas que se adicionarmos a cadeia aooaaaaaaa no final da sequência, o código resultante S‘={aaaaaaabbb,yyuudiwwkl, kkfidaaooa, aooaaaaaaa}, será inválido, pois S‘4 é subcadeia da concatenação S‘3S‘1. A nossa tarefa, então, é ajudar o agente secreto a livrar a comunidade acadêmica de uma ameaça em potencial. Faremos isso ajudando a identificar se os códigos que ele está vendo são válidos ou não. Entrada A primeira linha da entrada contém um inteiro N, representando o número de cadeias na sequência. As N linhas seguintes contêm, cada uma, uma cadeia de 10 letras minúsculas, definindo a sequência de cadeias do código. Saída Seu programa deve imprimir uma linha contendo a cadeia "ok" caso o código seja válido, ou contendo a primeira cadeia na sequência que invalida o código. Quer dizer, contendo Sk onde k é o menor possível tal que Sk seja subcadeia de uma concatenação de duas cadeias anteriores na sequência. Restrições 1 ≤ N ≤ 10000 Exemplos Entrada 3 aaaaaaabbb yyuudiwwkl kkfidaaooa Saída ok Entrada 4 aaaaaaabbb yyuudiwwkl kkfidaaooa aooaaaaaaa Saída aooaaaaaaa Entrada 1 jfjshiddds Saída ok Entrada 2 abcdefghij abcdefghij Saída abcdefghij Entrada 8 xfwvijuydq hcprvezofg hwykagqawu givfzndqpy yvfiqgadfc wuhcprvezo qaswiksscl uchskpkcit Saída wuhcprvezo