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

В файле на­хо­дит­ся таб­ли­ца, ко­то­рая со­дер­жит в каж­дой из строк по 7 на­ту­раль­ных чисел. Най­ди­те ко­ли­че­ство таких строк, в ко­то­рых два числа по­вто­ря­ют­ся по 2 раза, а 3 дру­гих раз­лич­ны, сред­нее ариф­ме­ти­че­ское не­по­вто­ря­ю­щих­ся чисел мень­ше сред­не­го ариф­ме­ти­че­ско­го по­вто­ря­ю­щих­ся.

За­да­ние 9

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

Ре­ше­ние.

Для ре­ше­ния за­да­чи вы­пи­шем в столб­цы от H до N по­вто­ря­ю­щи­е­ся зна­че­ния. Вы­пи­шем в ячей­ку H1 фор­му­лу:

=ЕСЛИ(СЧЁТЕСЛИ( $A1:$G1;A1)=2;A1;"").

Дан­ная фор­му­ла вер­нет в ячей­ку зна­че­ние из ячей­ки A1, если оно встре­ча­ет­ся два раза. Ско­пи­ру­ем фор­му­лу на диа­па­зон H1:N16000. В ячей­ку O1 вы­пи­шем фор­му­лу =СУММ(H1:N1)/4 и ско­пи­ру­ем ее на диа­па­зон O1:O16000. В дан­ном столб­це будет сред­нее ариф­ме­ти­че­ское строк с по­вто­ря­ю­щи­ми­ся чис­ла­ми. В ячей­ку P1 вы­пи­шем фор­му­лу =ЕСЛИ(H1="";A1;"") и ско­пи­ру­ем ее на диа­па­зон P1:V16000. Дан­ная фор­му­ла вер­нет зна­че­ние в ячей­ки, если они не по­вто­ря­ют­ся. В ячей­ку W1 вы­пи­шем фор­му­лу =СРЗНАЧ(P1:V1) и ско­пи­ру­ем ее на диа­па­зон W1:W16000. В дан­ном столб­це будет сред­нее ариф­ме­ти­че­ское всех чисел стро­ки. В ячей­ке X1 про­ве­рим, что в стро­ке по 2 по­вто­ря­ю­щих­ся числа, для этого вве­дем фор­му­лу:

=СЧЁТЕСЛИ(H1:N1;">0"),

и ско­пи­ру­ем ее на диа­па­зон X1:X16000. В столб­це Y будем счи­тать ко­ли­че­ство строк, удо­вле­тво­ря­ю­щих на­ше­му ре­ше­нию. Для этого вве­дем фор­му­лу:

=ЕСЛИ(И(X1=4;W1 < O1);1;0)

и ско­пи­ру­ем ее на весь диа­па­зон Y1:Y16000.

По­счи­та­ем ко­ли­че­ство строк, удо­вле­тво­ря­ю­щих на­ше­му усло­вию, фор­му­лой: =СУММ(Y1:Y16000).

 

Ответ: 24.

 

При­ведём ре­ше­ние Ми­ха­и­ла Глин­ско­го на языке Python.

k=0

for s in open('9.txt'):

m=[int(x) for x in s.split()]

m.sort()

pov=[x for x in m if m.count(x) == 2]

nepov=[x for x in m if m.count(x) == 1]

if len (set(pov)) == 2 and len(nepov) != 0:

sap = sum(pov)/len(pov)

sanep = sum(nepov)/len(nepov)

if sanep < sap:

k += 1

print(k)

 

При­ме­ча­ние.Файл сле­ду­ет со­хра­нить в фор­ма­те txt.

 

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

f = open('9.txt')

c = 0

for i in f:

a = list(map(int, i.split()))

b = []

d = set()

for j in range(len(a)):

if a.count(a[j]) == 2:

b.append(a[j])

elif a.count(a[j]) == 1:

d.add(a[j])

if len(b) == 4 and len(d) == 3:

if sum(d)/3 < sum(b)/4:

c += 1

print(c)

 

При­ме­ча­ние.Файл сле­ду­ет со­хра­нить в фор­ма­те txt.

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