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

7. Башня Петя в очередной купил себе набор из кубиков. На этот раз он выстроил из них настоящую крепость — последовательность из N столбиков, высота каждого столбика составляет Ai кубиков.
Вскоре ему стало интересно, насколько его крепость защищена от жуликов и воров. Для этого он ввел понятия башни. Башней называется любая последовательность из K столбиков подряд (где K — любимое число Пети). Защищенность башни определяется как суммарная высота всех столбиков этой башни (чем она больше, тем громаднее и ужаснее она кажется), умноженная на минимум высоты столбиков башни (т.к. враги, очевидно, будут пытаться проникнуть через самое слабое место башни). Неприступность крепости определяется как сумма защищенностей каждой из башен.
Петя решил как можно скорее посчитать, какова же неприступность его крепости. Однако вскоре он понял, что недостаточно знать высоту каждого из столбиков. В зависимости от того, как сгруппировать столбики в башни, получится разный результат. Разумеется, Петя выберет то разбиение на башни, при котором неприступность будет максимальна.
Петя успешно справился со своей задачей, но теперь Правительство Флатландии решило защитить свой горный курорт. Правительство уже построило крепость из кубиков (просто кубики были побольше). Теперь вы должны Правительству посчитать неприступность этой крепости. Единственная трудность состоит в том, что у Правительства было очень много денег, и поэтому крепость была построена очень длинная.
Входные данные
В первой строке входного файла содержатся число N — количество столбиков в крепости и число K — любимое число Пети (1 ≤ K ≤ N ≤ 1000). Далее на следующей строке содержатся N целых чисел, обозначающих Ai (1 ≤ Ai ≤ 103).
Выходные данные
На первой строке выведите число Q — количество башен в оптимальном разбиении. Далее выведите Q чисел — номера первых столбиков каждой башни.
Гарантируется, что в оптимальном разбиении неприступность крепости не превосходит 2 × 109.
Примеры
входные данные
1 1
1
выходные данные
1
1
входные данные
2 1
1 1000
выходные данные
2
1 2
входные данные
8 3
1 2 3 4 1 6 7 8
выходные данные
2
2 6
Код нужен на C++

Показать ответ
Ответ:
basemaker
basemaker
01.06.2021 16:27

Pascal

var

 ar: array of integer;

 i, j, a, b, k, n :integer;

begin

(* Дан массив целых чисел (n = 20), *)

(* заполненный случайным образом числами из промежутка [-45, 95].*)

randomize;

 n:=20;

 setlength(ar, n);

 for i := 0 to n-1 do begin

   ar[i]:= random(140)-45;

   write(ar[i],' ');

 end;  

 writeln;

 

(* Удалить из него все элементы, кратные 7 и *)

(* принадлежащие промежутку [a, b] (a и b вводить с клавиатуры)*)  

 writeln('введите диапазон [a,b]');

 readln(a,b);

 

 i:=0;

 while i <= n-1 do

   if (ar[i] mod 7 = 0) and (ar[i]>=a) and (ar[i]<=b)then begin

     for j := i+1 to n - 1 do

       ar[j-1] := ar[j];

     n := n - 1

   end

   else

     inc(i);

  setlength(ar, n);

   

  for i := 0 to n-1 do begin

    write(ar[i],' ');

  end;

  writeln;

 

(* Вставить число k между всеми соседними элементами, которые образуют пару *)

(* элементов с одинаковыми знаками k вводить с клавиатуры).*)  

 writeln('введите k');

 readln(k);

 

 i := n - 1;

 while i > 0 do begin

   if ar[i]*ar[i-1]>0 then begin

     inc(n);

     SetLength(ar, n);

     for j := n - 1 downto i do

       ar[j] := ar[j-1];

     ar[i] := k;

     

   end;  

   dec(i);

 end;  

 

 for i := 0 to n-1 do

   write(ar[i],' ');

end.

0,0(0 оценок)
Ответ:
gulnazka06
gulnazka06
10.03.2020 17:28

a) 1

б) 1

в) 1

г) 0

Объяснение:

(х < 4) & (х > 2) v ¬(x > 2)

a) x = 1

(1 < 4) & (1 > 2) v ¬(1 > 2) = 1 & 0 v ¬0 = 0 v ¬0 = 0 v 1 = 1

б) х = 2

(2 < 4) & (2 > 2) v ¬(2 > 2) = 1 & 0 v ¬0 = 0 v ¬0 = 0 v 1 = 1

в) х = 3

(3 < 4) & (3 > 2) v ¬(3 > 2) = 1 & 1 v ¬1 = 1 v ¬1 = 1 v 0 = 1

г) х = 4

(4 < 4) & (4 > 2) v ¬(4 > 2) = 0 & 1 v ¬1 = 0 v ¬1 = 0 v 0 = 0

¬ (НЕ) - обратно исходному высказыванию

& (И) - истинно, когда истины оба исходных высказывания

∨ (ИЛИ) - ложно, когда ложны оба исходных высказывания

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