Сортування вибором

Перегляд у форматі PDF

Надіслати розв'язок

Бали: 1,00 (partial)
Time limit: 60.0s
Memory limit: 256M
Input: stdin
Output: stdout

Problem type
Allowed languages
C#

ПОПЕРЕДЖЕННЯ: перевірка цієї задачі ще в процесі розробки, можливі якісь помилки на стороні сервера. ЯКЩО Ви досить впевнені, що на стороні Вашої програми все правильно і проблема саме на стороні сервера — прошу повідомити (наприклад, коментарем прямо тут на DMOJ прямо під задачею, дотримавшись таких вимог:

  • пишіть коментар з того ж логіна, з якого здавали розв'язок (отой самий, що Ви вважаєте, що він неправильно перевірений);
  • вказуйте точний точний час відправки цього розв'язку;
  • наводьте словесне пояснення, чому Ви впевнені, що це сервер неправильно оцінює Ваш розв'язок, а не розв'язок неправильний.

Або, можна зачекати, поки перевірка запрацює більш-менш стабільно…



Дано масив дійсних чисел, серед яких можуть бути як різні, так і однакові.

Відсортуйте цей масив, застосувавши сортування вибором (selection sort).

Протокол взаємодії

Ваша програма повинна багатократно повторювати такі дії:

  • прочитати один рядок, який містить розділені одинарними пробілами дійсні числа
    • кількість невідома, але їх точно не менше одного й не більше ~50\,000~;
    • якщо число неціле, то ціла і дробова частини розділяються крапкою .;
  • відсортувати цей масив;
  • вивести його, в один рядок через одинарні пробіли
    • не намагайтеся красиво форматувати та/або заокруглювати ці числа, бо це може призвести до вердикту «неправильна відповідь»; просто виводьте через, наприклад, Console.WriteLine(string.Join(" ", arr));
  • прочитати наступний рядок, яий гарантовано міститиме або єдине слово continue, або єдине слово stop (маленькими латинськими буквами, без будь-яких зайвих символів), після чого:
    • якщо це слово continue, то повторити все вказане вище для нового рядка-масиву;
    • якщо це слово stop, то завершити роботу.

Важливо виводити відсортований попередній масив до (раніше) того, як читати чергове слово continue або stop.

Приклад взаємодії

Ваша програма вводить Ваша програма виводить
3 1 4
1 3 4
continue
3 1 4 1 5 9 2 6 3.1416
1 1 2 3 3.1416 4 5 6 9
stop

Нібито порожні рядки у прикладі зроблені суто для того, щоб краще було видно, що повинно відбутися раніше і що пізніше; вводити/виводити їх не треба.

Той самий приклад у вигляді, більш зручному для копіювання:

3 1 4
continue
3 1 4 1 5 9 2 6 3.1416
stop

Але не варто сприймати цей вигляд просто за вхідні дані, бо, повторюю, важливо виводити відсортований попередній масив до (раніше) того, як читати наступне слово continue або stop.


Коментарі

Please read the guidelines before commenting.


Ще немає коментарів.