Найти максимальное число, которое может получиться в результате удаления ровно одной двоичной цифры - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Помогите решить задачу: У Маленького Слоника есть целое число a, записанное в двоичной системе счисления. Он хочет написать это число на листке бумаги. Чтобы число a поместилось на листке бумаги, Маленький Слоник обязан удалить ровно одну любую цифру числа a в двоичной записи, при этом образуется новое число из остальных двоичных цифр, записанных в соответствующем порядке (возможно, с лидирующими нулями). Маленький Слоник хочет, чтобы записанное на бумагу число было как можно больше. Помогите ему найти максимальное число, которое может получиться в результате удаления ровно одной двоичной цифры, и выведите его в двоичной системе счисления.

Входные данные

В единственной строке задано целое число a, записанное в двоичной системе счисления без лидирующих нулей. Количество цифр этого числа больше 1 и не превышает 105.

Выходные данные

В единственной строке выведите число, записанное без лидирующих нулей в двоичной системе счисления — ответ на задачу.

Примеры тестов

входные данные

101

выходные данные

11

входные данные

110010

выходные данные

11010 Примечание В первом примере лучше всего удалить вторую цифру, при этом образуется число 11(2) = 3(10). Во втором примере, лучше всего удалить третью или четвертую цифры — после этого получится число 11010(2) = 26(10).

Решение задачи: «Найти максимальное число, которое может получиться в результате удаления ровно одной двоичной цифры»

textual
Листинг программы
var a:string;
begin
 readln(a);
 if pos('0',a)>0 then delete(a,pos('0',a),1)
                 else delete(a,1,1);
 writeln(a)
end.

Объяснение кода листинга программы

  1. Переменная a объявляется как строка.
  2. Ввод значения переменной a с помощью функции readln().
  3. Проверка наличия цифры '0' в строке a с помощью функции pos().
  4. Если цифра '0' есть, то удаляем ее из строки a с помощью функции delete().
  5. Если цифры '0' нет, то удаляем первую цифру из строки a с помощью функции delete().
  6. Вывод значения переменной a с помощью функции writeln().
  7. Завершение работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4 из 5
Похожие ответы