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

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

—  в стро­ке ми­ни­маль­ное число встре­ча­ет­ся два или три раза, осталь­ные числа без по­вто­ре­ний;

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

В от­ве­те за­пи­ши­те толь­ко число.

За­да­ние 9

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

Ре­ше­ние.

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

f = open('9.txt')

st = 0

for s in f:

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

mini_m = min(m)

rep = [x for x in m if (m.count(x) == 2 or m.count(x) == 3) and x == mini_m]

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

if (len(rep) == 2 and len(no_repeat) == 6) or (len(rep) == 3 and len(no_repeat) == 5):

if max(no_repeat)**2+min(no_repeat)**2 <= (sum(no_repeat)-max(no_repeat)-min(no_repeat))**2:

st += 1

print(st)

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

 

Ответ: 752.

 

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

f=open('9.txt')

k=0

for i in f:

a=sorted([int(x) for x in i.split()])

if a.count(min(a))==2 and len(set(a))==7 and ((a[2]**2+a[7]**2)<=((a[3]+a[4])+a[5]+a[6])**2):

k+=1

elif a.count(min(a))==3 and len(set(a))==6 and ((a[3]**2+a[7]**2)<=((+a[4])+a[5]+a[6])**2):

k+=1

print(k)

 

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

 

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

ответ = 0

for стро­ка in open('9.csv'):

числа = list(map(int, стро­ка.split(';')))

ми­ни­мум = [x for x in числа if x==min(числа)]

осталь­ные = sorted([x for x in числа if x!=min(числа)])

if 2 <= len(ми­ни­мум) <= 3 and len(осталь­ные) == len(set(осталь­ные)) and осталь­ные[0]**2+осталь­ные[-1]**2 <= sum(осталь­ные[1:-1])**2:

ответ += 1

print(ответ)

 

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

 

 

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

От­кры­ва­ем файл с дан­ны­ми.

В ячей­ку I1 впи­сы­ва­ем фор­му­лу =СЧЁТЕСЛИ(A1:H1;МИН(A1:H1)).

(Сколь­ко раз встре­ча­ет­ся ми­ни­маль­ное число.)

В ячей­ку J1 впи­сы­ва­ем фор­му­лу =ЕСЛИ(СЧЁТЕСЛИ($A1:$H1;A1)=1;A1;"") и ко­пи­ру­ем её в ячей­ки K1:Q1.

(В ячей­ки J1:Q1 пе­ре­но­сим числа, ко­то­рые встре­ча­ют­ся один раз.)

В ячей­ку R1 впи­сы­ва­ем фор­му­лу =И(I1>=2;I1<=3;I1=СЧЁТЕСЛИ(J1:Q1;"")) - это пер­вое усло­вие.

(Число пу­стых ячеек среди уни­каль­ных чисел долж­но быть равно ко­ли­че­ству по­вто­ре­ний ми­ни­маль­но­го числа.)

В ячей­ку S1 впи­сы­ва­ем фор­му­лу =МИН(J1:Q1)^2+МАКС(J1:Q1)^2<=(СУММ(J1:Q1)-МАКС(J1:Q1)-МИН(J1:Q1))^2 - это вто­рое усло­вие.

В ячей­ку T1 впи­сы­ва­ем фор­му­лу =И(R1:S1) - это вы­пол­не­ние обоих усло­вий.

Раз­мно­жа­ем стро­ку I1:T1 до конца дан­ных.

В ячей­ку U1 впи­сы­ва­ем фор­му­лу =СУММ(T:T) и по­лу­ча­ем в ней ответ 752.


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