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_08_11 - Gra w bańki

Zasady gry. Wyobraźmy sobie oś liczbową na której umieszczamy bańki poruszające się w lewo lub w prawo. Wszystkie bańki poruszają się ze stałą prędkością niektóre w lewo inne w prawo. Jeśli dojdzie do kolizji, tzn. spotkają się dwie bańki, które poruszają się w przeciwnych kierunkach, to następuje jedna z dwóch sytuacji:

  • jeśli bańki są różnej wielkości, to większa pochłania mniejszą zwiększając swoją objętość o tą zjedzoną
  • jeśli bańki są równej wielkości, to bańki pękają, gdyż żadna z nich nie jest w stanie pochłonąć bańki równej sobie.

Twoim zadaniem jest określenie początkowych pozycji baniek, które ukończą grę. Bańka ukończy grę, wtedy i tylko wtedy, gdy uda jej się opuścić oś.

Wejście

W pierwszym wierszu jedna liczba n określająca liczbę baniek na osi (nie więcej niż milion)

W drugim wierszu n baniek w postaci liczby całkowitej reprezentującej objętość bańki (objętości baniek mieszczą się w przedziale [1..106].

W trzecim wierszu n znaków należących do zbioru {l, r} określających kierunek poruszania się baniek. I-ty znak określa kierunek i-tej bańki: l - w lewo, r - w prawo.

Wyjście

Początkowe pozycje baniek, które opuszczą planszę gry. Pozycje podajemy jako rosnący ciąg. Pierwsza bańka wysunięta najbardziej na lewo ma numer 1, druga 2 itd.

Przykład

Wejście:
5
2 4 3 2 1
r r l r l

wyjście:
1 2 4

Dodane przez:Marcin Kasprowicz
Data dodania:2017-11-22
Limit czasu wykonania programu:1s
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.