· 2022/2
3
Algoritmos e Programação de Computadores
UNICAMP
3
Algoritmos e Programação de Computadores
UNICAMP
60
Algoritmos e Programação de Computadores
UNICAMP
4
Algoritmos e Programação de Computadores
UNICAMP
5
Algoritmos e Programação de Computadores
UNICAMP
95
Algoritmos e Programação de Computadores
UNICAMP
2
Algoritmos e Programação de Computadores
UNICAMP
4
Algoritmos e Programação de Computadores
UNICAMP
3
Algoritmos e Programação de Computadores
UNICAMP
7
Algoritmos e Programação de Computadores
UNICAMP
Texto de pré-visualização
Torre de Panquecas Seu restaurante favorito tem sempre vários pratos ambiciosos no cardápio. Em particular, um dos pratos mais famosos no café da manhã é a torre de panquecas. Esse prato é composto por uma pilha de panquecas de vários tamanhos. Um grande desafio no preparo desse prato é empilhar as panquecas com uma espátula de forma a garantir que a torre fique estável. Como você sabe programar, o restaurante pediu a sua ajuda para desenvolver um programa que, dados os movimentos feitos com a espátula para empilhar as panquecas, determina se a torre de panquecas final é estável. Uma torre de panquecas será representada por uma lista de inteiros, sendo que cada inteiro indica o diâmetro de uma panqueca e as panquecas são representadas de cima para baixo. Ou seja, o primeiro inteiro representa o diâmetro da panqueca no topo da torre, o segundo inteiro representa o diâmetro da panqueca abaixo dela e assim por diante. Dada uma torre de panquecas, um movimento de espátula, representado por um inteiro M, consiste em virar as M primeiras panquecas da torre. Por exemplo, abaixo vemos um movimento de espátula 3 sendo aplicada em uma torre [7,5,3,7] resultando na torre [3,5,7,7]. Uma torre de panquecas é considerada estável se a lista correspondente está ordenada em ordem crescente, ou seja, cada panqueca é menor ou igual a todas as panquecas abaixo dela. O seu programa deverá receber como entrada uma linha composta por vários inteiros, separados por espaços, representando a pilha de panquecas. Em seguida, o programa deverá receber várias linhas, cada uma com um inteiro representando um movimento de espátula. Uma linha com o inteiro 0 indica o final da sequência de movimentos. Como saída o programa deve imprimir a mensagem Torre estável se a torre de panquecas for estável após a aplicação dos movimentos ou a mensagem Torre instável, caso contrário. Exemplos de entradas e saídas esperadas pelo seu programa: Teste 01 Entrada 4 6 3 2 1 3 0 Saída Torre estável 2 3 1 5 4 6 3 5 4 1 6 0 Saída Torre instável Teste 03 Entrada 1 2 3 5 4 6 7 8 6 2 3 0 Saída Torre estável # Laboratório 6 - Torre de Panquecas # Nome: # RA: ############################### # Leitura da torre de panquecas torre = [int(panqueca) for panqueca in input().split()] # Leitura e processamento dos movimentos # Impressão da saída
3
Algoritmos e Programação de Computadores
UNICAMP
3
Algoritmos e Programação de Computadores
UNICAMP
60
Algoritmos e Programação de Computadores
UNICAMP
4
Algoritmos e Programação de Computadores
UNICAMP
5
Algoritmos e Programação de Computadores
UNICAMP
95
Algoritmos e Programação de Computadores
UNICAMP
2
Algoritmos e Programação de Computadores
UNICAMP
4
Algoritmos e Programação de Computadores
UNICAMP
3
Algoritmos e Programação de Computadores
UNICAMP
7
Algoritmos e Programação de Computadores
UNICAMP
Texto de pré-visualização
Torre de Panquecas Seu restaurante favorito tem sempre vários pratos ambiciosos no cardápio. Em particular, um dos pratos mais famosos no café da manhã é a torre de panquecas. Esse prato é composto por uma pilha de panquecas de vários tamanhos. Um grande desafio no preparo desse prato é empilhar as panquecas com uma espátula de forma a garantir que a torre fique estável. Como você sabe programar, o restaurante pediu a sua ajuda para desenvolver um programa que, dados os movimentos feitos com a espátula para empilhar as panquecas, determina se a torre de panquecas final é estável. Uma torre de panquecas será representada por uma lista de inteiros, sendo que cada inteiro indica o diâmetro de uma panqueca e as panquecas são representadas de cima para baixo. Ou seja, o primeiro inteiro representa o diâmetro da panqueca no topo da torre, o segundo inteiro representa o diâmetro da panqueca abaixo dela e assim por diante. Dada uma torre de panquecas, um movimento de espátula, representado por um inteiro M, consiste em virar as M primeiras panquecas da torre. Por exemplo, abaixo vemos um movimento de espátula 3 sendo aplicada em uma torre [7,5,3,7] resultando na torre [3,5,7,7]. Uma torre de panquecas é considerada estável se a lista correspondente está ordenada em ordem crescente, ou seja, cada panqueca é menor ou igual a todas as panquecas abaixo dela. O seu programa deverá receber como entrada uma linha composta por vários inteiros, separados por espaços, representando a pilha de panquecas. Em seguida, o programa deverá receber várias linhas, cada uma com um inteiro representando um movimento de espátula. Uma linha com o inteiro 0 indica o final da sequência de movimentos. Como saída o programa deve imprimir a mensagem Torre estável se a torre de panquecas for estável após a aplicação dos movimentos ou a mensagem Torre instável, caso contrário. Exemplos de entradas e saídas esperadas pelo seu programa: Teste 01 Entrada 4 6 3 2 1 3 0 Saída Torre estável 2 3 1 5 4 6 3 5 4 1 6 0 Saída Torre instável Teste 03 Entrada 1 2 3 5 4 6 7 8 6 2 3 0 Saída Torre estável # Laboratório 6 - Torre de Panquecas # Nome: # RA: ############################### # Leitura da torre de panquecas torre = [int(panqueca) for panqueca in input().split()] # Leitura e processamento dos movimentos # Impressão da saída