В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История

Задача C. Юбилей Имя входного файла: стандартный поток ввода
Имя выходного файла: стандартный поток вывода
Ограничение по времени: 1 секунда
Ограничение по памяти: 256 мебибайт
Сегодня у Мишиной бабушки юбилей: ей исполняется 90 лет! В честь такой знаменательной даты он решил приготовить подарок своими руками. Миша знает, что его бабушка —
в математик — точно обрадуется, если получит в подарок число. Он достал все
фигурки цифр, которые у него были, и разложил их в ряд, в результате чего получилось
число N.
Миша решил, что такое банальное число его бабушке не понравится. Теперь он хочет
узнать наибольшее число, кратное 90, которое может быть получено перестановкой цифр
числа N.
Формат входных данных
В единственной строке задано натуральное число N.
Формат выходных данных
Выведите единственное число — ответ на поставленную задачу, если он существует.
В противном случае, выведите «−1» (без кавычек).
Примеры
стандартный поток ввода стандартный поток вывода
90 90
207 720
3456 -1
Подзадача 1 ( : 30)
В N не более 1000 цифр.
Подзадача 2 ( : 70)
В N не более 105 цифр.
Решение в Паскале

Показать ответ
Ответ:
Дарина55134
Дарина55134
11.12.2020 09:05

//PascalABC.NET версия 3.2, сборка 1389

//Если программа не запускается, то обновите версию

uses System.Linq;

begin

   writeln('III');

   var a := ReadArrInteger('Документы', ReadInteger('n=')).ToList;

   writeln;

   

   while a.Any() do

   begin

       write(a[0], ' ');

       a.RemoveAt(0);

       if not a.Any then break;

       

       write(a.Last, ' ');

       a.RemoveAt(a.Count - 1);

       if not a.Any then break;

       

       var n := 0;

       if a.Count > 1 then n := a.Count div 2 - 1;

       write(a[n], ' ');

       a.RemoveAt(n);

   end;

end.

Объяснение:

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота