Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

FR_07_11 - Mieszanie tablicy

Przydatną funkcją jest system mieszający elementy tablicy. Poniżej znajduje się opis takiego systemu:

Zasada mieszania:

Wyobraźmy sobie trzy struktury działające w następujący sposób:

  1. Struktura pierwsza (stos): element, który jako ostatni został dodany, jako pierwszy będzie zdjęty i usunięty ze struktury, itd..
  2. Struktura druga (kolejka FIFO): element, który jako pierwszy został dodany, jako pierwszy będzie zdjęty i usunięty ze struktury, itd.
  3. Struktura trzecia (kolejka priorytetowa): element, który ma największą wartość, będzie zdjęty jako pierwszy i usunięty ze struktury, itd.

Elementy tablicy, które chcemy wymieszać dodajemy cyklicznie do struktury nr 1, 2 oraz 3. Następnie w ten sam sposób zdejmujemy ze struktur. 

Na wejściu pojawią się elementy tablicy już pomieszane, twoim zadaniem jest wypisanie kolejnych elementów tablicy w pierwotnym ich ustawieniu. Uwaga! Jeśli istnieje kilka prawidłowych odpowiedzi, wypisujemy dowolną.

Wejście

W pierwszym wierszu jedna liczba n określająca liczbę elementów tablicy (nie więcej niż 2 000 000). 

W drugim wierszu n liczb całkowitych. Każda z nich mieści się w przedziale [-109..109].

Wyjście

Na wyjściu wypisujemy przykładowe pierwotne ustawienie elementów tablicy.

Przykład

Wejście:
10
10 2 9 7 5 6 4 8 3 1 

Wyjście:
1 2 3 4 5 6 7 8 9 10 

Dodane przez:Marcin Kasprowicz
Data dodania:2017-04-07
Limit czasu wykonania programu:1s-2s
Limit długości kodu źródłowego50000B
Limit pamięci:1536MB
Cluster: Cube (Intel G860)
Języki programowania:All except: GOSU
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.