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

В каж­дой стро­ке элек­трон­ной таб­ли­цы за­пи­са­ны шесть на­ту­раль­ных чисел.

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

— в стро­ке есть число, по­вто­ря­ю­ще­е­ся не мень­ше трёх раз;

— в стро­ке есть число, не по­вто­ря­ю­ще­е­ся в этой стро­ке;

— сред­нее ариф­ме­ти­че­ское всех по­вто­ря­ю­щих­ся чисел стро­ки (с учётом ко­ли­че­ства по­вто­ре­ний) мень­ше сред­не­го ариф­ме­ти­че­ско­го не­по­вто­ря­ю­щих­ся чисел этой стро­ки.

В от­ве­те за­пи­ши­те число  — ко­ли­че­ство строк, удо­вле­тво­ря­ю­щих за­дан­ным усло­ви­ям.

За­да­ние 9

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

Ре­ше­ние.

Сна­ча­ла про­ве­рим пер­вое и вто­рое усло­вия. Для этого в ячей­ку G1 вве­дем фор­му­лу:

=СЧЁТЕСЛИ($A1:$F1;A1)

и ско­пи­ру­ем эту фор­му­лу во все остав­ши­е­ся ячей­ки диа­па­зо­на G1:L30000.

В ячей­ку M1 вве­дем фор­му­лу:

=СЧЁТЕСЛИ(G1:L1; "=1")

и ско­пи­ру­ем эту фор­му­лу во все остав­ши­е­ся ячей­ки диа­па­зо­на M2:M30000. Если в стро­ке есть не по­вто­ря­ю­щих­ся числа, в ячей­ке М будет сто­ять число боль­шее 0, иначе будет сто­ять 0.

В ячей­ку N1 вве­дем фор­му­лу:

=СЧЁТЕСЛИ(G1:L1;">2")

и ско­пи­ру­ем эту фор­му­лу во все остав­ши­е­ся ячей­ки диа­па­зо­на N2:N30000.

Если в стро­ке есть по­вто­ря­ю­щих­ся более трех раз числа, в ячей­ке N будет сто­ять число боль­шее 0, иначе будет сто­ять 0.

Для про­вер­ки тре­тье­го усло­вия в ячей­ку O1 вве­дем фор­му­лу:

=ЕСЛИ(G1=1;A1;"")

и ско­пи­ру­ем эту фор­му­лу в ячей­ки диа­па­зо­на O1:T30000.

В дан­ном диа­па­зо­не мы по­лу­чим толь­ко не по­вто­ря­ю­щи­е­ся числа.

В ячей­ку U1 вве­дем фор­му­лу:

=ЕСЛИ(M1<>0;СРЗНАЧ(O1:T1);0)

и ско­пи­ру­ем эту фор­му­лу во все остав­ши­е­ся ячей­ки диа­па­зо­на U2:U30000.

В этом столб­це будет сред­нее зна­че­ние не по­вто­ря­ю­щих­ся чисел.

В ячей­ку V1 вве­дем фор­му­лу:

=ЕСЛИ(G1<>1;A1;"")

и ско­пи­ру­ем эту фор­му­лу во все остав­ши­е­ся ячей­ки диа­па­зо­на V1:AA30000.

В дан­ном диа­па­зо­не мы по­лу­чим толь­ко по­вто­ря­ю­щи­е­ся числа.

В ячей­ку AB1 вве­дем фор­му­лу:

=ЕСЛИ(N1>0;СРЗНАЧ(V1:AA1);0)

и ско­пи­ру­ем эту фор­му­лу во все остав­ши­е­ся ячей­ки диа­па­зо­на AB2:AB30000.

В этом столб­це будет сред­нее зна­че­ние по­вто­ря­ю­щих­ся чисел.

В ячей­ку AC1 вве­дем фор­му­лу:

=ЕСЛИ(AB1 < U1;1;0)

и ско­пи­ру­ем эту фор­му­лу во все остав­ши­е­ся ячей­ки диа­па­зо­на AC2:AC30000.

В этом столб­це будет 1 если вы­пол­ня­ет­ся тре­тье усло­вие, и 0 если не вы­пол­ня­ет­ся.

В ячей­ку AD1 вве­дем фор­му­лу:

=ЕСЛИ(И(M1<>0;N1<>0;AC1<>0);1;0)

и ско­пи­ру­ем эту фор­му­лу во все остав­ши­е­ся ячей­ки диа­па­зо­на AD2:AD30000.

В этом столб­це будет 1 если вы­пол­ня­ют­ся все усло­вия, и 0 если не вы­пол­ня­ют­ся. Окон­ча­тель­но вос­поль­зо­вав­шись фор­му­лой:

=СУММ(AD1:AD30000),

по­лу­чим ответ  — 17.

Ответ: 17.

 

 

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

f = open('09.txt')

k = 0

for i in f:

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

sum1=0

k1=0

sum2=0

k2=0

f=0

for j in range (0,len(a)):

if a.count(a[j]) > 1:

sum1+=a[j]

k1+=1

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

sum2+=a[j]

k2+=1

if a.count(a[j]) >= 3:

f=1

if k1!=0 and k2!=0 and f==1:

if sum1/k1 < sum2/k2:

k+=1

print(k)

 

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

 

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

k = 0

for s in open('09.csv'):

a = list(map(int,s.split(';')))

unik = [x for x in a if a.count(x) == 1]

povt = [x for x in a if a.count(x) > 1]

cnt = [a.count(x) for x in a]

if len(unik) > 0 and max(cnt) >= 3 and sum(povt) / len(povt) < sum(unik )/ len(unik):

k += 1

print(k)

 

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


Аналоги к заданию № 72567: 72594 Все

Источник: Стат­Град: Тре­ни­ро­воч­ная ра­бо­та 24.10.2024 ИН2410102