Предмет: Информатика, автор: MrRenderr

Задача B. Числа такси
Имя входного файла: стандартный ввод
Имя выходного файла: стандартный вывод
Ограничение по времени: 1 секунда
Ограничение по памяти: 128 мегабайт
Назовём числом такси число, которое можно представить в виде суммы двух кубов натуральных чисел двумя (или более) различными способами. Легенда, давшая имя этим числам, связана с
великими британскими математиками — Г. Х. Харди и Сринивасом Рамануджаном:
Я (Годфри Харди) помню, пришёл раз навестить его (Рамануджана), лежащего в больнице в
Питни. Я приехал на такси с номером 1729 и заметил в разговоре, что число скучное, и что я
надеюсь, что это не является неблагоприятным знаком. «Нет, — ответил тот, — это число
очень интересно: это наименьшее натуральное число, представимое в виде суммы кубов двумя
различными способами!»
Ваша задача — ответить, сколько чисел такси существует на промежутке от 1 до N включительно.
Формат входных данных
Дано натуральное число N (1 6 N 6 2 · 109
).
Формат выходных данных
Выведите единственное число — ответ на задачу.
Система оценки
Ограничения
Подзадача Баллы
n
Необходимые
подзадачи
Результаты во
время тура
1 40 n 6 103 У Потестовые
2 30 n 6 107 У, 1 Потестовые
3 30 n 6 2 · 109 У, 1, 2 Потестовые
Примеры
стандартный ввод стандартный вывод
1 1729 0 1

Ответы

Автор ответа: valery445
1

Ответ:

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

Объяснение:

Похожие вопросы
Предмет: Английский язык, автор: pavlotimcak5