Объяснение:
В прошлом году на уроке математики на домашнем задании мы иногда получали эти чрезвычайно простые, хотя и не менее раздражающие вопросы, называемые алмазными головоломками. В основном это были вопросы, в которых нам давали бы сумму, а затем продукт просили найти два числа, которые при умножении дают продукт, а при добавлении дают сумму. Это сводило меня с ума, поскольку единственный способ, которым я знал, как их решить (в алгебре I), это просто перечислить факторы продукта, а затем посмотреть, какие из них добавлены к сумме. (Так как я не знал, как использовать Quadratics в то время) Не говоря уже о том, что они не были достаточно сложной математикой. Однако мне пришло в голову, что я должен был просто написать программу. Так что это ваш вызов сегодня! Напишите программу, которая может решить алмазную головоломку.
Примеры Извинения за размытое изображение, это лучшее, что я смог найти. Кроме того, игнорируйте числа в пузырьках. Верхняя часть ромба - это произведение, нижняя часть - сумма, правая и левая - две цифры. Ответы таковы: (Это также ваши тесты)
- 9, -7
- -2, -1
- 5, 8
- -9, -9
Правила:
- Вы не можете использовать какие-либо предварительно определенные функции или классы, которые выполняют это для вас.
- Ваш код должен быть законченной программой или функцией, которая либо возвращает, либо печатает ответы, как только находит их
- Входными данными являются сумма и произведение, которые вводятся в виде параметров функции или пользовательского ввода.
Характеристики:
- Предположим, что два числа, сумма и произведение всегда будут целыми числами.
- Оба ответа будут между -127 и 127.
- Ваш ввод будет состоять из двух целых чисел (сумма и произведение).
Помните, что это код-гольф, поэтому выигрывает самый короткий счетчик байтов. Пожалуйста, назовите ваш ответ стандартным ## Language Name, Byte Count
Редактировать: Кроме того, Doorknob указал, что это по существу "фактор квадратичной формы x ^ 2 + bx + c,". Это еще один способ думать и подходить к решению этой проблемы. : D
(x + n)(x + m)
дает вам x^2 + (n+m)x + (n*m)
, поэтому факторинг упомянутого квадратичного в основном эквивалентен этому вопросу (если я правильно понимаю).
x^2 + bx + c
», верно?