sofyaderka4eva
05.08.2020 17:29

Очень Поликарп выписал на доске n цифр, отличных от нуля. Таким образом, на доске записана строка s длины n, состоящая из цифр от 1 до 9.
Введем понятие подстроки строки s: подстрока строки s — это последовательность, состоящая из произвольного количества символов строки s, которые идут в строке s подряд.
Теперь он хочет найти в этой строке подстроку максимальной длины, которая удовлетворяет следующим условиям:
• длина подстроки — четное число;
• пусть x — длина подстроки, тогда сумма первых x/2 цифр подстроки равна сумме
последних x/2 цифр подстроки.
Перед вами стоит задача определить максимальную длину подстроки строки s, которая
удовлетворяет описанным условиям.
Формат входных данных
В первой строке следует целое число n (2 6 n 6 5 000) — длина строки s.
Во второй строке следует строка s длины n, состоящая из цифр от 1 до 9.
Формат выходных данных
Выведите максимальную длину подстроки строки s, которая удовлетворяет описанным
условиям. Если ни одной подходящей подстроки не существует, выведите 0.
Примеры
стандартный ввод стандартный вывод
9
123856931 4

8
12345678 0

12
434892555555 12
Замечание
В первом примере ответной подстрокой является подстрока 3856 длины 4, которая начинается в позиции 3 и заканчивается в позиции 6. Сумма первой половины цифр равна
11 и сумма второй половины цифр равна 11, поэтому эта подстрока удовлетворяет всем
условиям.
Во втором примере нет ни одной подстроки, удовлетворяющей всем условиям, поэтому
нужно вывести 0.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
marinandnatasha1
21.07.2020 03:36

Математическая модель (а также программа; зависит от того, что понимать под этапом формализации).

В учебнике выделяют такие этапы решения задачи на компьютере:

Исходные данные (результат - словесная информационная модель)Формализация (математическая модель)Алгоритмизация (алгоритм)Программирование (программа)Отладка, тестирование (уточнение модели)Выполнение расчетов (получение результатов)

Нормальные люди понимают, что после формализации информация должна быть представлена на формальном языке, таких языком может быть как математический, так и язык программирования.

0,0(0 оценок)
Ответ:
Russland2000
05.03.2020 07:45
Const n=8;
var x : array[1..n] of real;
   i : integer; min : real;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
 begin
  x[i]:=20*random-10;
  write(x[i]:6:2,' ');     
 end;
 writeln;
min:=x[1];
for i:=2 to n do
 if x[i] < min then min:=x[i];
writeln('min=',min:6:2);
for i:=1 to n do
 if x[i]<0 then x[i]:=min;
writeln('Измененный массив:');
for i:=1 to n do write(x[i]:6:2,' ');
end.

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