πЕГЭ · ИИ-репетитор12 предметов · задания ФИПИ
Главная → Информатика → Задания №17 → Задание i17-12

Задание №17 ЕГЭ Информатика с ответом и решением

Ответ: 635 19730

Условие

Файл содержит последовательность неотрицательных целых чисел, не превышающих 10 000. Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых хотя бы один из двух элементов делится на 3, а их сумма делится на 5. В ответе запишите два числа: сначала количество найденных пар, а затем — максимальную сумму элементов таких пар.

Например, в последовательности (2 3 7 8 9) есть две подходящие пары: (2 3) и (3 7), в ответе для этой последовательности надо записать числа 2 и 10.

Подсказки — как подойти к решению

  1. Парой здесь считаются два соседних элемента, а не любые два: нужен один проход по массиву, где на каждом шаге ты смотришь на элементы с индексами i и i + 1. Числа читай из файла программой.
  2. Условие составное: хотя бы один элемент пары делится на 3, а сумма пары делится на 5. Максимум суммы сравнивай только для подходящих пар и не сдвигай окно сразу через элемент.

Решение

Решим задачу перебором. Приведём решение данной задачи на языке PascalABC:

var

x, y, count, maxsum: integer;

f: text;

begin

assign(f,'C:\17.txt');

reset(f);

count := 0;

maxsum := 0;

readln(f, x);

while not eof(f) do begin

readln(f, y);

if ((x mod 3 = 0) or (y mod 3 = 0)) and ((x + y) mod 5 = 0) then begin

count := count + 1;

if (x + y > maxsum) then maxsum := x + y;

end;

x := y;

end;

writeln(count, ' ', maxsum);

end.

Результат работы программы — 635 19730.

Ответ: 635 19730.

Приведём решение Павла Шостка на языке PascalABC:

var a:=readalltext('17.txt').ToIntegers.Pairwise.

Where(\(x,y)->(x.divs(3) or y.divs(3)) and (x+y).divs(5));

a.Count.Println;

a.Select(\(x,y)->x+y).Max.Print;

end.

Приведём решение на языке Python.

f=open('17_38951.txt')

Sum=0

Mx=0

x=int(f.readline())

for y in f:

y=int(y)

if (((x+y)%5==0) and ((x%3==0) or (y%3==0))):

Sum += 1

Mx = max(Mx,x+y)

x=y

print(Sum,Mx)

Типичные ошибки

Решить это задание в тренажёре

В тренажёре: подсказки по шагам, разбор твоей ошибки ИИ-репетитором (он не даёт готовый ответ), повторение ошибок по интервалам и общий прогресс. Все задания №17 по информатике