Marinap041744
27.06.2021 08:45

Задача на паскале. Батарея состоит из прямоугольных обогревательных секций. Все секции имеют одинаковый размер и одинаковую мощность. Однако, ремонт батареи, в случае выхода из строя одной из секции - очень трудоемкая задача, поэтому на складе запчастей, батарейные блоки бывают L разных видов: шириной в 1 секцию, в 2 секции, ...,в L секций. Такой блок из нескольких секций нельзя разрезать на части, то есть одним блоком можно заменить не более любых L подряд идущих секций. При этом можно менять не только неисправные секции, но и хорошие(стоимость блоков учитывать не будем - работа все-равно выходит дороже). Определите, какое наименьшее число блоков необходимо взять мастеру, чтобы починить всю батарею.

Формат ввода
Первая строка входных данных содержит целое число L(L > 0) - максимальный размер батарейного блока. Во второй строке входных данных записано целое число N(N > 0) - количество секций в заборе. Следующие N строк содержат по одному числу, равному 0 или 1. Число 1 обозначает, что соответствующая секция в батарее нуждается в замене, число 0 - что секция может быть сохранена.

Формат вывода
Программа должна вывести одно целое число - сумму введенных чисел N и M.
Пример
Ввод Вывод
3 2
8
0
0
1
0
1
0
1
0

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
kristina710
24.07.2022 12:21
Class OftenChar{
 public static void main(String args[]){
  java.util.Scanner in = new java.util.Scanner(System.in);
  String string = in.nextLine(); char chars[] = new char[4];
  chars[0] = in.nextLine().charAt(0); chars[2] = in.nextLine().charAt(0);
  for(int sChar = 0; sChar<string.length(); sChar++)
   if(string.charAt(sChar)==chars[0])chars[1]++;
   else if(string.charAt(sChar)==chars[2])chars[3]++;
  System.out.print("\n"+(chars[1]==chars[3]?chars[0]+""+chars[2]:chars[1]>chars[3]?chars[0]:chars[2]));
 }
}
0,0(0 оценок)
Ответ:
esketit1
26.02.2020 10:06
Var n,m,osn: integer;
function nmbdec(var n,osn: integer): integer;
var nmb,l,s,k: integer;
begin
  nmb:=0;  s:=0;
  k:=n;  l:=1;
  while k>0 do
  begin
    s:=k mod 10;
    k:=k div 10;
    nmb:=nmb+l*s;
    l:=l*osn;
  end;
  Result:=nmb;
end;
{ конец функции}
begin
  write('число:  ');
  readln(n);
  write('квадрат какого числа:  ');
  readln(m);
  osn:=10;
  while osn>=2 do
  begin
     osn:=osn-1;
    if nmbdec(n,osn)=sqr(nmbdec(m,osn)) then
    begin
      writeln('основание системы = ',osn);
      break;
    end;
  end;
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота