#GPT-4 Conversation #1097555318650716271

1 messages · Page 1 of 1 (latest)

hardy chasmBOT
quick shell
#

Дана последовательность из N натуральных чисел. Рассматриваются все её непрерывные подпоследовательности, такие что сумма элементов каждой из них кратна k = 43. Найдите среди них подпоследовательность с максимальной суммой, определите её длину. Если таких подпоследовательностей найдено несколько, в ответе укажите количество элементов самой короткой из них.

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

В первой строке количество пар N (1 ≤ N ≤ 104). Каждая из следующих N строк содержит одно натуральное число, не превышающих 10000.

напиши код на pascal.abc

hardy chasmBOT
# quick shell Дана последовательность из N натуральных чисел. Рассматриваются все её непрерывн...

Вот код на языке программирования PascalABC.NET, который решает данную задачу:

uses SysUtils;
var
  n, k, s, i, j, len, max_sum, current_sum, max_sub_length: integer;
  seq: array of integer;
  sum: array of integer;

begin
  k := 43;
  readln(n);
  setlength(seq, n);
  setlength(sum, n + 1);
  
  for i := 0 to n - 1 do
    readln(seq[i]);
  
  sum[0] := 0;
  for i := 1 to n do
    sum[i] := sum[i - 1] + seq[i - 1];
  
  max_sum := -1;
  max_sub_length := MaxInt;
  
  for i := 1 to n do
    for j := i to n do
    begin
      current_sum := sum[j] - sum[i - 1];
      len := j - i + 1;
      if (current_sum mod k = 0) and (current_sum > max_sum) then
      begin
        max_sum := current_sum;
        max_sub_length := len;
      end
      else if (current_sum mod k = 0) and (current_sum = max_sum) and (len < max_sub_length) then
        max_sub_length := len;
    end;
  
  writeln('Максимальная сумма: ', max_sum);
  writeln('Длина подпоследовательности: ', max_sub_length);
end.

Этот код сначала считывает количество чисел и сами числа, затем считает суммы элементов, а затем просматривает все непрерывные подпоследовательности в поисках подпоследовательности с максимальной суммой, которая кратна k. В результате выводится максимальная сумма и длина самой короткой подпоследовательности с этой суммой.

quick shell
#

Датчики, установленные в некоторой области, фиксируют температуру раз в сутки. Требуется найти датчик, показывающий наибольшее количество температурных аномалий. Если таких датчиков несколько, то выбрать первый из них. Аномалией считается отклонение от средней температуры за весь период измерений этого датчика более чем на десять градусов. Если температурных аномалий не обнаружено, вывести сообщение «аномалий нет».

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

В первой строке записано натуральное число N – количество датчиков. Далее идёт N строк, в каждой из которых записано название датчика. В той же строке за именем датчика находятся целые числа – показания температуры. Числа и слово отделены друг от друга одним пробелом. Название датчика пробелов не содержит, лишних пробелов нет. Важно отметить, что количество измерений у разных датчиков не обязано совпадать, но не превышает 50.

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

Требуется вывести имя датчика или «аномалий нет».