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.|

AL_04_06 - Smok Adrian

Znajdujemy się w Bajtogrodzie, jest to spokojne miejsce, w którym żyją sami dobrzy ludzie. Niedaleko jest jaskinia Smoka Adriana, jednak nie ma z nim większych problemów, bo 128 lat temu słynny matematyk rozwiązał jego zagadkę, a w zamian smok spokojnie śpi. Jednak kiedy jego zagadka nie była rozwiązana, był bardzo groźny, bo wszystko jadł: bitociastka, bitobatony, domy, plony, szkoły, a nawet niesmaczną kredę, ludzie musieli więc wtedy uciekać. Jednak ten spokój może zostać znowu zachwiany i mogą nastąpić ciężkie czasy. Tajny agent Krystian po przeprowadzeniu śletdztwa wie, że Smok Adrian jutro się obudzi i zada nową zagadkę, udało mu się jednak poznać treść zagadki. Jednak jest spory kłopot, bo jedyna osoba, która może bez problemu rozwiązać tę zagadkę (bardzo zdolna Marysia), jest na międzyplanetarnym zjeździe matematyków, więc ostatnią deską ratunku jest Magda, jednak czy w jej rece można powierzyć los całego spokojnego świata? No właśnie - lepiej nie, więc Ty musisz jej pomóc i napisać program, który szybko poda schemat rozwiązania zagadki, a Magda postara się bezbłędnie wykonać schemat.

Treść tajnej wiadomości od agenta Krystiana:

" Zagadka: 
Smok daje n po pojemników, każdy o pojemności Vi , jest również żródło wody, z którego można wielokrotnie napełnić dowolny pojemnik do pełna. Możemy również przelawać wodę między pojemnikami, naszym celam jest tak przelewać wodę, aby w którymkolwiek pojemniku zostało równo W wody.
"

Pojemniki są numerowane od 0 do n-1

Polecenia, które może wypisac Twój program, i które zrozumie Magda:

N x         - napełnij do pełna wodą pojemnik x

O x        - opróżnij całą zawartość pojemnika x

P xa xb   - przelej wodę z pojemnika xa do pojemnika xb (przelewanie kończy się dwoma rezultatami: pojemnik xa pozostanie pusty, cała woda z niego zostanie przelana do drugiego lub, jeśli się nie zmieści, to zostanie przelane tyle wody ile się zmieści w pojemniku xb, a reszta zostanie).

W x       - informuje Magdę, że w pojemniku x jest szukana ilość wody, po tym poleceniu program powinien zakończyć działanie.

Input

W pierwszej linii dwie liczby n, W (liczba pojemników, szukana objętość wody)

W nastepnej lini n liczb Vi (pojemności kolejnych pojemników)

Dane są bardzo małe n<20  V,W<100 000

Output

Należy wypisać ciąg poleceń, które pozwolą nam osiągnąć cel.

Przykładowe polecenia:

* N 0  - napełnij do pełna pojemnik 0

* O 2  - opróżnij pojemnik 2

* P 1 2  - przelej wodę z pojemnika 1 do pojemnika 2

* W 1   - daje informację, że szukana objętosć wody jest w pojemniku 1 (powinno to być ostatnie polecenie, które wypisuje program)

Example

Input:
3 7
3 4 10
Output: N 2
P 2 1
P 1 0
P 1 2
W 2

*Jest to jedna z wielu możliwości osiągnięcia celu, do sprawdzania zadania jest napisany sędzia, aby każda dobra kombinacja przeszła.

PUNKTACJA:
Celem jest wypisanie jak najmniej poleceń, wynik to pierwiastek z liczby poleceń, im mniejszy wynik tym lepjej.


Dodane przez:Marek Mystkowski
Data dodania:2013-01-21
Limit czasu wykonania programu:0.100s
Limit długości kodu źródłowego50000B
Limit pamięci:1536MB
Cluster: Cube (Intel G860)
Języki programowania:All except: ASM64 GOSU
Pochodzenie:Algoliga 4

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.