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

Дана по­сле­до­ва­тель­ность ве­ще­ствен­ных чисел. Из неё не­об­хо­ди­мо вы­брать не­сколь­ко под­ряд иду­щих чисел так, чтобы каж­дое сле­ду­ю­щее число было боль­ше преды­ду­ще­го. Какую мак­си­маль­ную сумму могут иметь вы­бран­ные числа?

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

За­да­ние 18

При­мер вход­ных дан­ных:

 

5,2
3,1
6,2
2,3
3,1
3,3

 

Для ука­зан­ных вход­ных дан­ных мак­си­маль­но воз­мож­ная сумма равна 9,3, в от­ве­те надо за­пи­сать число 9.

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

Ре­ше­ние.

Ско­пи­ру­ем число из ячей­ки A1 в ячей­ку B1. Далее будем срав­ни­вать те­ку­щее число с преды­ду­щим и, если оно те­ку­щее число будет боль­ше преды­ду­ще­го, сум­ми­ро­вать те­ку­щее число с преды­ду­щим чис­лом в столб­це B. За­пи­шем в ячей­ку B2 фор­му­лу =ЕСЛИ(A2>A1;A2+B1;A2) и ско­пи­ру­ем эту фор­му­лу во все ячей­ки диа­па­зо­на B3:B500. Таким об­ра­зом, все ис­ко­мые суммы по­сле­до­ва­тель­но­стей будут най­де­ны. Те­перь в ячей­ке C1 за­пи­шем фор­му­лу =МАКС(B1:B500), по­лу­чив зна­че­ние 321,19. Таким об­ра­зом, ответ  — 321.

 

Ответ: 321.

 

При­ведём ре­ше­ние Даны Ар­тю­хи­ной на языке Python.

s = [float(x.replace(',', '.')) for x in open('inf_22_10_20_18.txt')]

sm= s[0]

mx =0

for i in range(1, len(s)):

if s[i]>s[i-1]:

sm +=s[i]

else:

mx = max(mx, sm)

sm =s[i]

mx = max(mx, sm)

print(mx)


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

Раздел кодификатора ФИПИ: 3.4.3 Ис­поль­зо­ва­ние ин­стру­мен­тов ре­ше­ния ста­ти­сти­че­ских и рас­чет­но-гра­фи­че­ских задач