Deque(): cria e devolve uma deque vazia PushFront(d,x): insere x no extremo front de d PushBack(d,x): insere x no extremo back de d PopFront(d): remove o elemento no extremo front de d PopBack(d): remove o elemento no extremo back de d Front(d): devolve o elemento no extremo front de d Back(d): devolve o elemento no extremo back de d Kth(d,k): k-ésimo elemento de d, onde o front é o primeiro elemento de d Print(d): imprime todos os elementos da deque d na mesma linha, separados por um branco (não precisa se preocupar com eventual espaço em branco no fim da linha)Descrição da entrada de testes: Seu programa deve criar uma deque d0 vazia antes de começar a processar a entrada.
Codificação das operações:
1 <t> <x> significa d_ultima+1 = PushFront(d_t, x) 2 <t> <x> significa d_ultima+1 = PushBack(d_t, x) 3 <t> significa d_ultima+1 = PopFront(d_t) 4 <t> significa d_ultima+1 = Popback(d_t) 5 <t> significa println(Front(d_t)) 6 <t> significa println(Back(d_t)) 7 <t> <k> significa println(Kth(d_t, k)) 8 <t> significa Print(d_t)Exemplo de entrada para o programa de testes:
1 0 1 1 1 2 2 2 3 8 3 2 3 4 1 4 5 8 5 5 5 6 5 7 5 2 7 5 4 3 3 8 5 8 3 8 6 4 5 8 7 1 4 6 8 8Saída esperada para este teste:
2 1 3 5 2 1 3 4 5 4 2 3 5 2 1 3 4 2 1 3 1 3 5 2 1 3 6 2 1 3 4