Олимпиадный тренинг

Задача . Задания от Фомы: F27-01 (КЕГЭ27-2021)


Задача

Темы:

По мотивавам задания КЕГЭ-27. Основная волна 2021 
На вход программы поступают:

  • число n - количество элементов в последовательности
  • число m -  делитель суммы
  • A1, A2, ... , An  - последовательность из целых положительных чисел:

Необходимо определить такие i, j, что:

  1. \(i\leq j\)
  2.  \(S_i^j\ =\ A_i\ +\dots\ +\ A_j\ кратна\ m \)
Среди всех отобранных пар найти такую, что
  1. \(S_i^j\ -\ имеет \ максимальное\ значение\)
  2. \((j - i)\ -\ имеет\ минимальное\ значение\ среди\ всех, \ отобранных\ в\ пункте\ III. \)
  3. i - имеет минимальное значение среди всех, отобранных в пункте IV.

Последовательно выполните поставленные задачи и выведите:

  1.  w - количество пар (i,j), удовлетворяющих пункту II
  2.   x - значение, найденное в пункте III ( максимальная сумма подпоследовательности кратной m)
  3.   y  - количество элементов подпоследовательности, найденных в пункте IV
  4.   z  - значение i, найденное в пукте V

Входные данные
.Файл для задания доступен для чтения.
Первая строка файла содержит значения n ( 2 ≤ n ≤ 106)
Вторая строка  файла содержит значения m ( 10 ≤ m ≤ 104)
Гарантируется, что в каждой из последующих n строк записано одно целое положительное число,
не превышающее 105
Пример организации исходных данных во входном файле:
8
50
2
3
4
93
42
34
5
95
Чисел  в последовательности 8,  делитель равен 50. При указанных входных данных значением искомой суммы должно быть
число 100 (3+4+93 или 5+95). Следовательно, ответ на задачу
w=2; x=100; y=2; z=7

Программа должна вывести найденные значения
Выходные данные
Значения w, x, y, z (четыте числа в строку через пробел).


time 3000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
Python7
Комментарий учителя