Remover segmentos de uma lista ligada

Dada uma lista ligada, pede-se que executes q consultas nela. Existem 2 tipos de consultas:
  1. print – o programa deve imprimir a lista ligada
  1. remove l r – remove todos os elementos desde o l-ésimo até ao r-ésimo, inclusive.

Input

Os dados iniciais para a lista ligada são obtidos automaticamente. Não é necessário fazeres nada. Garante-se que o tamanho da lista ligada não excede 1000 e que os valores na lista não ultrapassam em valor absoluto.
A primeira linha do input contém um único inteiro q (1 ≤ q ≤ 1000).
As seguintes q linhas contêm as consultas – print se o programa tiver de imprimir a lista ligada, e remove l r se for necessário remover os valores entre o l-ésimo e o r-ésimo elementos (1 ≤ l, r ≤ |L|).

Output

O programa deve imprimir corretamente os valores na lista ligada para todas as consultas print. Os valores devem ser separados por espaços.

Examples

Entrada
Saída
10 4 8 4 0 -2 8 2 8 0 4 5 remove 1 2 print remove 1 2 remove 3 4 print
4 0 -2 8 2 8 0 4 -2 8 0 4
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue