Найти - Пользователи
Полная версия: Задача: http://acm.timus.ru/problem.aspx?space=1&num=2033 Выводит ошибку 32, понять не могу в чем дело.
Начало » Центр помощи » Задача: http://acm.timus.ru/problem.aspx?space=1&num=2033 Выводит ошибку 32, понять не могу в чем дело.
1
Alexppp
 from collections import Counter
d = {}
qwe = []
a = [str(input()) for i in range(18)]
z = a[::3]
for i in z:
    a.remove(i)
m = a[::2]
data_pairs = zip(a[::2],a[1::2])
for x in data_pairs:
    d.setdefault(x[0],[]).append(int(x[1]))
for i, j in d.items():
    d[i] = int(min(j))
l = Counter(m)
max_ = max(l.values())
for m, l in l.items():
    if l == max_:
        qwe.append(m)
if len(qwe) == 1:
    print(*qwe)
else:
    ss = []
    for i in qwe:
        for m, l in d.items():
            if i == m:
                ss.append(int(l))
    asdf = []
    min_ = min(ss)
    for i, j in d.items():
        if min_ == int(j):
            asdf.append(i)
    print(asdf[0])
Papa_Svin
Alexppp
А локально вы пробовали этот код тестировать? На каком массиве данных?
Papa_Svin
Для данной задачи, код мягко говоря, совсем говно.
marvellik
a = [[b]str([/b]input()) for i in range(18)]
str лишнее и так из файла подается строка, дальше я потерялся что и зачем делается
проверьте такой вариант
 spl = iter([input() for _ in range(18)])         
dict_device = {}
for _,dev,price in zip(spl,spl,spl):
    if dev in dict_device:
        dict_device[dev][0] += 1
        if int(price) < dict_device[dev][1]:
            dict_device[dev][1] = int(price)
    else:
       dict_device[dev] = [1, int(price)]
       
max_dev = max(i[0] for i in dict_device.values())
dict_device = dict((k,v) for k,v in dict_device.items() if v[0] == max_dev)
print(min(dict_device, key = lambda x : dict_device.get(x)[1] ))
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB