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

В файле со­дер­жит­ся по­сле­до­ва­тель­ность целых чисел.

За­да­ние 17

Эле­мен­ты по­сле­до­ва­тель­но­сти могут при­ни­мать целые зна­че­ния от 1 до 100 000 вклю­чи­тель­но. Опре­де­ли­те ко­ли­че­ство пар по­сле­до­ва­тель­но­сти, в ко­то­рых толь­ко одно число трех­знач­ное, и сумма эле­мен­тов пары крат­на ми­ни­маль­но­му трех­знач­но­му зна­че­нию по­сле­до­ва­тель­но­сти, окан­чи­ва­ю­ще­му­ся на 5. В от­ве­те за­пи­ши­те два числа: сна­ча­ла ко­ли­че­ство най­ден­ных пар, затем ми­ни­маль­ную из сумм эле­мен­тов таких пар. В дан­ной за­да­че под парой под­ра­зу­ме­ва­ет­ся два иду­щих под­ряд эле­мен­та по­сле­до­ва­тель­но­сти.

 

Ответ:

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

Ре­ше­ние.

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

count = 0

m = 100001

f = open('17.txt')

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

min_sp = 1000001

for i in range(len(l)):

if 99< l[i] <1000 and l[i] % 10 == 5:

min_sp = min(min_sp, l[i])

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

if (99< l[i] <1000) != (99 < l[i+1] <1000) and ((l[i]+l[i+1]) % min_sp == 0):

count += 1

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

print(count, m)

 

Ре­зуль­тат ра­бо­ты про­грам­мы  — 2  33120.

 

Ответ: 2  33120.

 

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

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

 

При­ведём ре­ше­ние Юрия Кра­силь­ни­ко­ва на языке Python.

a = [int(s) for s in open('17.txt')]

m = min([x for x in a if 100 <= x < 1000 and x%10==5])

b = [a[i]+a[i+1] for i in range(len(a)-1) if (100 <= a[i] < 1000)!=(100 <= a[i+1] < 1000) and (a[i]+a[i+1])%m==0]

print(len(b),min(b))

 

При­ведём ре­ше­ние Ев­ге­ния Дж­об­са (элек­трон­ные таб­ли­цы).

От­кро­ем дан­ные с по­мо­щью ре­дак­то­ра элек­трон­ных таб­лиц. Для на­хож­де­ния ми­ни­маль­но­го зна­че­ния, крат­но­го 105, вос­поль­зу­ем­ся сле­ду­ю­щим ал­го­рит­мом:

1)  на­про­тив каж­дой ячей­ки с дан­ны­ми на­пи­шем фор­му­лу, ко­то­рая либо воз­вра­ща­ет число из дан­ной стро­ки, крат­ное 105, либо пу­стую стро­ку;

2)  cреди по­лу­чен­ных зна­че­ний най­дем ми­ни­маль­ное.

Фор­му­лы для пер­вой стро­ки:

а)  =если(И(остат(A1;10)=5;A1>99;A1<1000); A1; "");

б)  =макс(B:B).

Для вы­пол­не­ния пунк­та 2 в элек­трон­ных таб­ли­цах, не под­дер­жи­ва­ю­щих столб­ча­тые или стро­ко­вые диа­па­зо­ны, нужно ука­зать первую и по­след­нюю ячей­ки вто­ро­го столб­ца (столб­ца В).

На­пи­шем фор­му­лу для опре­де­ле­ния трех­знач­но­го числа и пре­об­ра­зу­ем ре­зуль­тат в 1 или 0:

=1*И(A1>99;A1<1000).

На­чи­ная со вто­рой стро­ки, опре­де­лим вы­пол­ня­е­мость усло­вия на пару. Пара  — число в преды­ду­щей стро­ке и число в те­ку­щей стро­ке. По­сколь­ку будем ис­кать ми­ни­маль­ное зна­че­ние среди сумм квад­ра­тов в парах, в ка­че­стве не­под­хо­дя­ще­го зна­че­ния возь­мем боль­шое число. Адрес $F$1 аб­со­лют­ный, так как в этой ячей­ке будет на­хо­дит­ся зна­че­ние для фор­мул во все стро­ках столб­ца D. Тогда:

=если(И(C1+C2=1;остат(A1+A2;F1)=0;A1+A2;"").

Те­перь най­дем от­ве­ты на во­про­сы за­да­ния.

Ко­ли­че­ство под­хо­дя­щих пар: =счёт(D:D).

Ми­ни­маль­ная сумма зна­че­ний эле­мен­тов под­хо­дя­щих пар: =мин(D:D).

Источник: ЕГЭ по ин­фор­ма­ти­ке 06.04.2023. До­сроч­ная волна