Problem description
Bajtek napisał profesjonalny program do
wyświetlania osi liczbowej w postaci ASCII artu (znaków -
(minus), +
(plus), >
(znak większości),
odstępów oraz cyfr).
Przykładowe osie liczbowe, które może wygenerować profesjonalny program Bajtka mogą wyglądać tak:
---+--------------+---------+----------> --+----+------------------> +--------+>
155 158 160 3330 3340 0 9
Jak widać na powyższych przykładach, efekt końcowy jest bardzo schludny. Formalizując jednak opis tych osi, Bajtek przyjął następujące założenia:
- każda oś liczbowa składa się z dwóch wierszy opisu o długości nie przekraczającej 1 000 000 znaków,
- pierwszy wiersz opisu składa się ze znaków
-
(fragment poziomy osi liczbowej),+
(oznaczenie zaznaczonego punktu na osi) oraz>
(na końcu osi liczbowej), - etykiety zaznaczonych punktów na osi liczbowej są w drugim wierszu,
pod znakami
+
, możliwie wyśrodkowane (w przypadku liczb parzystej długości dokładnie połowa cyfr znajduje się po lewej stronie znaku, - oznaczenia punktów (znaki
+
oraz liczbowe etykiety poniżej) nie wystają poza oś liczbową ani z lewej strony, ani z prawej strony - etykiety punktów są nieujemnymi liczbami całkowitymi i nie przekraczają 109,
- liczbowe etykiety punktów nie nakładają się na siebie i zawsze jest między nimi co najmniej jeden znak odstępu,
- na osi zaznaczone są zawsze co najmniej dwa punkty,
- punkty zaznaczone na osi są dokładnie (tzn. nie są stosowane żadne przybliżenia wynikające z ,,rozdzielczości’’ znaków).
Twoim zadaniem jest napisać program, który będzie zaznaczał dodatkowe punkty na osi wygenerowanej przez program Bajtka.
Wejście
W pierwszych dwóch wierszach znajduje się opis osi liczbowej, zgodnie z warunkami podanymi powyżej.
W trzecim wierszu znajduje się jedna liczba naturalna N oznaczająca liczbę dodatkowych punktów, które należy zaznaczyć na osi liczbowej. W czwartym (ostatnim) wierszu znajduje się ciąg N nieujemnych liczb całkowitych Xi pooddzielanych pojedynczymi odstępami. Są to współrzędne punktów, które należy dodatkowo zaznaczyć na osi liczbowej. Gwarantowane jest, że te punkty nie zostały zaznaczone na osi podanej w pierwszych dwóch wierszach wejścia.
Możesz założyć, że dane są dobrane w taki sposób, że możliwe jest zaznaczenie dodatkowych punktów, aby nadal spełniać założenia Bajtka opisane powyżej. Ponadto, zaznaczenie wszystkich dodatkowych punktów jest możliwe na podanej osi liczbowej, bez jej rozszerzania w którąkolwiek ze stron.
Wyjście
Twój program powinien wypisać oś liczbową z zaznaczonymi dodatkowymi punktami (ponad te, które były już wcześniej zaznaczone) w takim samym formacie jak pierwsze dwa wiersze wejścia.
Długość pierwszego wiersza wyjścia musi być taka sama jak długość pierwszego wiersza wejścia. Niedopuszczalne jest przesunięcie istniejących już punktów w inne miejsca.
Ograniczenia
1 ≤ N ≤ 100 000, 0 ≤ Xi ≤ 109.
Przykład
Wejście |
|
Wyjście |
|
Wejście |
|
Wyjście |
|
Wejście |
|
Wyjście |
|