Задания
Версия для печати и копирования в MS Word
Тип 17 № 37336
i

В файле со­дер­жит­ся по­сле­до­ва­тель­ность целых чисел. Эле­мен­ты по­сле­до­ва­тель­но­сти могут при­ни­мать целые зна­че­ния от −10 000 до 10 000 вклю­чи­тель­но. Опре­де­ли­те и за­пи­ши­те в от­ве­те сна­ча­ла ко­ли­че­ство пар эле­мен­тов по­сле­до­ва­тель­но­сти, в ко­то­рых хотя бы одно число де­лит­ся на 3, затем мак­си­маль­ную из сумм эле­мен­тов таких пар. В дан­ной за­да­че под парой под­ра­зу­ме­ва­ет­ся два иду­щих под­ряд эле­мен­та по­сле­до­ва­тель­но­сти. На­при­мер, для по­сле­до­ва­тель­но­сти из пяти эле­мен­тов: 6; 2; 9; –3; 6  — ответ 4 11.

За­да­ние 17

Ответ:

Спрятать решение

Ре­ше­ние.

Будем по­сле­до­ва­тель­но счи­ты­вать числа из файла. Для каж­дой пары (двух под­ряд иду­щих эле­мен­тов) будем про­ве­рять, де­лит­ся ли хотя бы одно число из пары на 3. При успеш­ном вы­пол­не­нии усло­вия будем уве­ли­чи­вать зна­че­ния счётчика count и про­ве­рять, боль­ше ли сумма эле­мен­тов пары те­ку­щей мак­си­маль­ной суммы. Если сумма эле­мен­тов пары боль­ше те­ку­щей мак­си­маль­ной суммы, будем об­нов­лять зна­че­ние пе­ре­мен­ной maxsum.

 

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

var

x, y, count: longint;

maxsum: longint;

f: text;

begin

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

reset(f);

readln(f, x);

maxsum := -20001;

count := 0;

while not eof(f) do begin

readln(f, y);

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

count := count + 1;

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

end;

x := y;

end;

writeln(count, ' ', maxsum);

end.

 

При­ведём ре­ше­ние Ни­ко­лая Чур­ки­на (Ти­ма­шевск) на языке Python.

count = 0

m = -20001

f = open('17.txt')

l = [int(i) for i in f]

for i in range(len(l) - 1):

if (l[i] % 3 == 0) or (l[i + 1] % 3 == 0):

count += 1

m = max(m, l[i]+ l[i + 1])

print(count, m)

 

В ре­зуль­та­те ра­бо­ты дан­но­го ал­го­рит­ма при вводе дан­ных из файла ответ  — 2802 1990.

 

При­ме­ча­ние.

Путь к файлу не­об­хо­ди­мо ука­зать со­глас­но рас­по­ло­же­нию файла на Вашем ком­пью­те­ре.

Источник: Де­мон­стра­ци­он­ная вер­сия ЕГЭ−2022 по ин­фор­ма­ти­ке
Раздел кодификатора ФИПИ: 1.7.2 Ос­нов­ные кон­струк­ции языка про­грам­ми­ро­ва­ния. Си­сте­ма про­грам­ми­ро­ва­ния