Написать функцию anymulsum(a, b, c), которая возвращает a * b + c. Проверка mypy --strict должна проходить без ошибок, только если b — целое, a и c — одного типа, который предусматривает сложение и умножение на целое (обоих случаях результат должен получиться того же типа). В тестах будут проверяться как допустимые, так и недопустимые сочетания.
Недопустимые сочетания: anymulsum("QW", 2, 3), anymulsum("QW", 2, (1, 2)).
Подсказка: я использовал параметрическй дженерик и typing.Protocol
Замечание: в моём решении пришлось отдельно рассматривать списки, потому что mypy отлично применял Protocol к строкам, кортежам и числам, но видя именно списки отчего-то начинал применять типизацию не к ним, а к их содержимому.
QWQWRTY 5
