Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Натали и новое платье

Kirilonik Gense Ученик (100), закрыт 5 лет назад
Натали собирается купить платье из новой модной коллекции. К сожалению, она внезапно забыла свой размер одежды. Чтобы точно найти платье своей мечты, девушка придумала алгоритм для выбора. Она просматривает платья в порядке возрастания их номеров. До тех пор пока не определится с размером, она примеряет только те платья, размеры которых она еще не видела. Как только Натали найдет платье, которое ей подходит, она понимает, что определилась с размером. После этого она примеряет все платья, которые подходят ей по размеру и которые она еще не видела, чтобы выбрать самое красивое. Помогите Натали определить, какое максимальное количество платьев ей придется померить.

Формат файла входных данных:

В первой строке содержится число платьев в новой коллекции n, 1 ≤ n ≤ 10^5. В следующей строке записаны n чисел - размеры платьев в порядке возрастания их номеров. Все размеры платьев целые числа от не меньшие 40 и не большие 70.

Формат файла выходных данных:

Выведите искомое количество платьев
Лучший ответ
Aleks Nots Просветленный (22647) 5 лет назад
По-моему так (Надеюсь, что строики ввода сами пришпандорите.)

s = '42 44 42 44 44 45 45 42 42 42'
A = list(map(int, s.split()))
A_set = set(A)

dress_cur = 0 # число примерок для текущего размера, с учетом пропущенных
dress_max = 0
n_size = 0 # число пропущенных размеров

for a in sorted(A_set):
~~~~~~~~dress_cur = n_size + A.count(a)
~~~~~~~~if dress_max < dress_cur:
~~~~~~~~~~~~~~~~dress_max = dress_cur
~~~~~~~~n_size += 1

print(dress_max)
Остальные ответы
АЗ Искусственный Интеллект (195314) 5 лет назад
Вот замутила эта Наташка...
Я всегда считал, что от Наташек одни неприятности.
Похожие вопросы