3. Football Cards
Здравейте,
Бих искал да помоля за помощ относно моето решение на задачата. В judge ми дава 80т., но не виждам причина.
https://pastebin.com/BmufEyx7
Здравейте,
Бих искал да помоля за помощ относно моето решение на задачата. В judge ми дава 80т., но не виждам причина.
https://pastebin.com/BmufEyx7
Има няколко проблема в предложеното решение.
Първият е, че не се прекъсва играта веднага след като някой отбор остане с по-малко от 7 играча, независимо от това колко още червени картона осават необработени от подадените на входа.
Това се заобикаля лесно, ако се добави проверка в цикъла:
for i in the_card_list:
#...
if Team_A < 7 or Team_B < 7:
break
По-сериозният проблем е, че решението размества последователността на подадените входни данни заради междинното преминаване през set:
the_card = input()
the_card_list = list(set(the_card.split()))
Например при входни данни:
A-1 A-2 A-3 A-4 A-5 A-6 A-7 B-1 B-2 B-3 B-4 B-5 B-6 B-7
the_card_list може да е:
['A-6', 'B-1', 'A-5', 'A-2', 'A-1', 'B-5', 'B-7', 'B-6', 'A-3', 'B-2', 'A-7', 'A-4', 'B-3', 'B-4']
Т.е., програмата ще изведе:
Team A - 6; Team B - 7
Game was terminated
Вместо:
Team A - 6; Team B - 11
Game was terminated
Мога да дам и готово решение, но мисля, че с горните коментари ще успеете и сам да решите задачата.
Здравейте, имам същия проблем със задачата. дава ми 80/100 в Judge.
Ако може някой да ми намери грешката.
https://pastebin.com/yWmYupaV
Моето решение:
https://pastebin.com/eLXAaNxz
ето решение и от мен.
team_A = 11 team_B = 11 cards = input().split(" ") cards_set = set(cards) # ignoring cards for players already out for element in cards_set: ele = element.split("-") letter = ele[0] num = int(ele[1]) if letter == "A": team_A -= 1 if team_A < 7: break elif letter == "B": team_B -= 1 if team_B < 7: break print(f"Team A - {team_A}; Team B - {team_B}") if team_A < 7 or team_B < 7: print("Game was terminated")
Благодаря!
Здравейте, имам същия проблем със задачата. дава ми 80/100 в Judge.
Ако може някой да ми намери грешката.
https://pastebin.com/yWmYupaV
Здравей, и на мен ми дава 80/100