Bankomaty
Limit pamięci: 32 MB
Każdy członek Bajtlandzkiej Kasy Pożyczkowej ma prawo pożyczyć dowolną sumę mniejszą niż bajtlandzkich dukatów,
ale musi ją w całości zwrócić do Kasy nie później niż po upływie dni.
W sali obsługi klientów Kasy ustawiono bankomatów ponumerowanych od do .
Każdy bankomat wykonuje tylko jedną operację: wypłaca albo przyjmuje ustaloną kwotę.
Bankomat o numerze wypłaca dukatów, jeśli jest parzyste, zaś przyjmuje dukatów, jeśli jest nieparzyste.
Gdy klient zamierza wypożyczyć ustaloną kwotę, trzeba zbadać, czy będzie mógł ją pobrać,
korzystając co najwyżej raz z każdego z bankomatów i jeśli tak, wyznaczyć numery bankomatów, z których należy skorzystać.
Trzeba również zbadać, czy będzie mógł ją zwrócić w podobny sposób i jeśli tak, wyznaczyć numery bankomatów,
z których należy skorzystać w celu wykonania tej operacji.
Przykład
Klient, który zamierza pożyczyć dukatów, pobiera najpierw dukatów w bankomacie nr i dukata w bankomacie nr ,
a następnie oddaje dukatów w bankomacie nr i dukaty w bankomacie nr .
Żeby zwrócić pożyczoną kwotę dukatów, pobiera najpierw dukata w bankomacie numer , a następnie oddaje dukatów w bankomacie nr .
Zadanie
Napisz program, który:
- wczytuje ze standardowego wejścia liczbę klientów i dla każdego klienta wysokość kwoty, jaką zamierza pożyczyć w Kasie;
- dla każdego klienta sprawdza, czy będzie mógł pobrać ustaloną kwotę korzystając co najwyżej raz z każdego bankomatu i jeśli tak,
wyznacza numery bankomatów, z których należy skorzystać, oraz czy będzie mógł ją zwrócić w podobny sposób i jeśli tak,
wyznacza numery bankomatów, z których należy skorzystać w tym celu;
- zapisuje wyniki na standardowe wyjście.
Wejście
W pierwszym wierszu standardowego wejścia znajduje się jedna liczba całkowita dodatnia .
Jest to liczba klientów.
W każdym z kolejnych wierszy jest jedna liczba całkowita dodatnia, mniejsza niż , zapisana za pomocą co najwyżej cyfr dziesiętnych.
Liczba w -tym z tych wierszy, to wysokość kwoty, którą zamierza pożyczyć klient nr .
Wyjście
W każdym z kolejnych wierszy standardowego wyjścia należy zapisać malejący ciąg liczb całkowitych dodatnich z zakresu
oddzielonych pojedynczym odstępem albo jedno słowo NIE:
- w pierwszym wierszu -tej pary wierszy — numery bankomatów, w porządku malejącym,
z których powinien skorzystać klient numer , by pobrać pożyczkę, albo słowo NIE, gdy nie może jej pobrać zgodnie z ustalonymi regułami;
- w drugim wierszu -tej pary — numery bankomatów, w porządku malejącym, z których powinien skorzystać klient numer , oddając pożyczkę albo słowo NIE.
Przykład
Dla danych wejściowych:
2
7
633825300114114700748351602698
poprawną odpowiedzią jest:
4 3 1 0
3 0
NIE
99 3 1
Autor zadania: Piotr Chrząstowski-Wachtel.