Пояснення:
Минулого року на уроці математики у домашніх завданнях ми час від часу отримували ці надзвичайно прості, хоча однаково дратівливі питання, які називали алмазними головоломок. В основному це були питання, де нам давали б суму, і тоді продукт попросили знайти два числа, які при множенні дають продукт, а коли додають - дають суму. Це зводило мене з розуму, оскільки єдиний спосіб, коли я знав, як їх вирішити (в Алгебрі I), - це просто перерахувати фактори продукту, а потім побачити, які з них додаються, щоб зробити суму. (Оскільки я тоді не знав, як користуватися квадратикою) Не кажучи вже про те, що вони не були дуже складними математикою. Однак мені просто вийшло, що я повинен був щойно написати програму. Отже, це ваше завдання сьогодні! Напишіть програму, яка може розгадати алмазну головоломку.
Приклади вибачень за розмите зображення, найкраще, що я міг знайти. Крім того, ігноруйте цифри в бульбашках. Верхня частина діаманта - добуток, внизу - сума, праворуч і ліво - два числа. Відповіді такі: (Це також ваші тестові справи)
- 9, -7
- -2, -1
- 5, 8
- -9, -9
Правила:
- Ви не можете використовувати будь-які заздалегідь визначені функції або класи, які виконують це для вас.
- Ваш код повинен бути повноцінною програмою або функцією, яка або повертає, або друкує відповіді, як тільки їх знайде
- Вхід - це сума і добуток, які вводяться як параметри функції або введення користувача
Технічні умови:
- Припустимо, що два числа, сума і добуток завжди будуть цілим числом.
- Обидві відповіді будуть від -127 до 127.
- Вашим входом буде два цілих числа (сума та продукт).
Пам'ятайте, що це код-гольф, тому виграє найменший байт. Будь ласка, вкажіть свою відповідь стандартним №# Ім'я мови, кількість байтів
Edit: Також Doorknob вказував, що це по суті "коефіцієнт квадратика форми x ^ 2 + bx + c". Це ще один спосіб задуматися і вирішити цей виклик. : D
(x + n)(x + m)
дає вам x^2 + (n+m)x + (n*m)
, тому факторинг сказаної квадратики в основному еквівалентний цьому питанню (якщо я правильно його розумію).
x^2 + bx + c
", правильно?