В молочных магазинах города Х продается сметана с жирностью 15, 20 и 25 процентов. В городе X был проведен мониторинг цен на сметану. Напишите эффективную по времени работы и по используемой памяти программу, которая будет определять для каждого вида сметаны, сколько магазинов продают ее дешевле всего. На вход программе сначала подается число магазинов N. В каждой из следующих N строк находится информация в следующем формате:
<Фирма> <Улица> <Жирность> <Цена>
где <Фирма> – строка, состоящая не более, чем из 20 символов без пробелов, <Улица> – строка, состоящая не более, чем из 20 символов без пробелов, <Жирность> – одно из чисел – 15, 20 или 25, <Цена> – целое число в диапазоне от 2000 до 5000, обозначающее стоимость одного литра сметаны в копейках. <Фирма> и <Улица>, <Улица> и <Жирность>, а также <Жирность> и <Цена> разделены ровно одним пробелом. Пример входной строки:
Перекресток Короленко 25 3200
Программа должна выводить через пробел 3 числа – количество магазинов, продающих дешевле всего сметану с жирностью 15, 20 и 25 процентов. Если какой-то вид сметаны нигде не продавался, то следует вывести 0.
Пример выходных данных:
12 10 0
<Фирма> <Улица> <Жирность> <Цена>
где <Фирма> – строка, состоящая не более, чем из 20 символов без пробелов, <Улица> – строка, состоящая не более, чем из 20 символов без пробелов, <Жирность> – одно из чисел – 15, 20 или 25, <Цена> – целое число в диапазоне от 2000 до 5000, обозначающее стоимость одного литра сметаны в копейках. <Фирма> и <Улица>, <Улица> и <Жирность>, а также <Жирность> и <Цена> разделены ровно одним пробелом. Пример входной строки:
Перекресток Короленко 25 3200
Программа должна выводить через пробел 3 числа – количество магазинов, продающих дешевле всего сметану с жирностью 15, 20 и 25 процентов. Если какой-то вид сметаны нигде не продавался, то следует вывести 0.
Пример выходных данных:
12 10 0
Решение
n=int(input())
g15=[]
g15=[0]*2
g20=[]
g20=[0]*2
g25=[]
g25=[0]*2
for i in range(n):
s1=input()
p = s1.index(' ')
s1 = s1[p+1:]
p = s1.index(' ')
s1 = s1[p+1:]
p = s1.index(' ')
g = int(s1[:p+1])
s1 = s1[p+1:]
c = int(s1)
if g==15:
if g15[0]==0:
g15[0]=c
g15[1]=1
elif g15[0]==c:
g15[1]+=1
elif g15[0]>c:
g15[0]=c
g15[1]=1
if g==20:
if g20[0]==0:
g20[0]=c
g20[1]=1
elif g20[0]==c:
g20[1]+=1
elif g20[0]>c:
g20[0]=c
g20[1]=1
if g==25:
if g25[0]==0:
g25[0]=c
g25[1]=1
elif g25[0]==c:
g25[1]+=1
elif g25[0]>c:
g25[0]=c
g25[1]=1
print(g15[1],' ',g20[1],' ',g25[1])
Комментариев нет:
Отправить комментарий