ABNORMAL_EXIT Срочно нужен ответ СРОЧНО
популярной игре для оценки силы игрока используется система рейтинга. Она работает настолько хорошо, что результат матча в формате 1 × 1 (один игрок против одного игрока) можно предсказать для всех игроков с различным рейтингом. Игрок с большим рейтингом гарантированно выиграет матч.
Для матчей в формате 2 × 2 (команда из двух игроков против команды из двух игроков) эта система работает уже не так хорошо, но информация о рейтингах игроков все равно может быть полезна. Команда A гарантированно одержит победу только в том случае, когда любой из игроков команды A гарантированно одержит победу над любым игроком команды B . Во всех остальных случаях победа не гарантирована.
Вам заданы рейтинги всех игроков, участвующих в матче 2 × 2 . Сможете ли вы предсказать победителя?
Входные данные В первой строке задается два числа a 1 и a 2 — рейтинги игроков команды A .
Во второй строке задается два числа b 1 и b 2 — рейтинги игроков команды B .
Все числа целые, положительные и не превосходят 100 .
Выходные данные Если команда A гарантированно одержит победу, то выведите WIN.
Если команда A гарантированно проиграет, то выведите LOSE. В этом случае команда B гарантированно выиграет.
Если точно предсказать результат матча невозможно, то выведите UNKNOWN.
я сделал код для этой задачи, но система выдает ошибку ABNORMAL_EXIT
вот код
import random
a1 = random.randint(0, 100)
a2 = random.randint(0, 100)
b1 = random.randint(0, 100)
b2 = random.randint(0, 100)
if a1 > b1 and a1 > b2:
with open("result.txt", "w") as f:
f.write("Win")
elif a1 == b1 or a1 == b2 or a2 == b1 or a2 == b2:
with open("result.txt", "w") as f:
f.write("Unkown")
# print("Unkown")
elif a2 > b1 and a2 > b2:
with open("result.txt", "w") as f:
f.write("Win")
elif a1 < b1 and a1 < b2:
with open("result.txt", "w") as f:
f.write("Lose")
elif a2 < b1 and a2 < b2:
with open("result.txt", "w") as f:
f.write("Lose")
Ответы (1 шт):
Задача говорит, что ввод надо задать вручную.
Значит вместоimport random a1 = random.randint(0, 100) a2 = random.randint(0, 100) b1 = random.randint(0, 100) b2 = random.randint(0, 100)применитe например
a1, a2 = input().split() b1, b2 = input().split() a1, a2, b1, b2 = int(a1), int(a2), int(b1), int(b2)Подобно для вывода — не в файл, а на экран.
Значит, вместо пары команд типаwith open("result.txt", "w") as f: f.write("Win")применитe просто
print("WIN")(все буквы прописные, т.е. не
"Win").Для гарантированной победы нужно чтобы любой игрок одной команды победил любого игрока второй команды, т.е. например недостаточно
if a1 > b1 and a1 > b2: print("WIN")Должно быть вычислены все 4 пары:
if a1 > b1 and a1 > b2 and a2 > b1 and a2 > b2: print("WIN")В ветвлении (
if-elif-else) обработайте сначала выигрыш первой команды, затем второй, а в ветвиelseуже автоматически остается результат UNKNOWN:if a1 > b1 and a1 > b2 and a2 > b1 and a2 > b2: print("WIN") elif a1 < b1 and a1 < b2 and a2 < b1 and a2 < b2: print("LOSE") else: print("UNKNOWN")