Софтуерно Инженерство
Loading...
+ Нов въпрос
petrovmitko avatar petrovmitko 141 Точки
Best Answer

Ако ти гърми Test #7 и при мен се получи, като се опитвах да махна еднаквите ястия (meal) накрая, след като съм напълнил обекта. Сложи една проверка още като го добавяш в масива, дали вече го има и само ако го няма го добавяй. При мен това беше проблема. Принципно пиша JavaScript, но ако искаш погледни моето решение. 

https://pastebin.com/9AfTTLjR

0
NKKalev avatar NKKalev 10 Точки

Здравей,

Честно казано твоят код много ме обърква - може би проблемът е в мен :)

Ето решение на задачата за 100/100. Надявам се да успееш да си намериш грешката в твоя.

 

text_input = input()
unliked_meals_count = 0
guests = {}

while text_input != "Stop":
    args = text_input.split("-")
    command = args[0]
    guest = args[1]
    meal = args[2]

    if command == "Like":

        if guest not in guests:
            guests[guest] = []
        if meal in guests[guest]:
            text_input = input()
            continue

        guests[guest].append(meal)

    elif command == "Unlike":

        if guest not in guests:
            print(f"{guest} is not at the party.")
            text_input = input()
            continue

        if meal not in guests[guest]:
            print(f"{guest} doesn't have the {meal} in his/her collection.")
            text_input = input()
            continue

        guests[guest].remove(meal)
        unliked_meals_count += 1
        print(f"{guest} doesn't like the {meal}.")

    text_input = input()

guests = dict(sorted(guests.items(), key=lambda g: (-len(g[1]), g[0])))

for guest, meals in guests.items():
    print(f"{guest}: {', '.join(meals)}")

print(f"Unliked meals: {unliked_meals_count}")
0
grishko0o avatar grishko0o 35 Точки

Здравей, 

благодаря за решението.

Малко бях изциклил след поредния submission и след поредни корекции, накрая наистина стана объркан доста. 

 

 

0