Member 14057703 Ответов: 1

Получить возможное значение числа в PHP


У меня есть пользовательское входное значение, например, 3360 или любое другое значение, например 4500, 5000, 3900, 2000 и т. д.

У меня есть 3 стандартных значения = 1120, 2240, 3360 //это фиксированная длина

Мой вопрос здесь заключается в том, что если пользователь вводит значение 3360, то как я могу показать возможное значение, например:-

1120 2240 3360
3 0 0 // это сумма 3360
1 1 0 // это сумма 3360
0 0 1 // это сумма 3360

Что я уже пробовал:

Я никогда не делал такой работы, Пожалуйста, помогите.

1 Ответов

Рейтинг:
1

OriginalGriff

Начните с того, что подумайте о числах, с которыми вам придется работать.
Давайте позвоним им x, y, и z, и вызовите цель, введенную пользователем t
Итак, вы ищете решение, где

a * x + b * y * c * z = t

Здесь возможны два исхода:
1) не существует комбинации из трех чисел, равной t. Это будет самое распространенное!
2) есть комбинации.
Итак, начните с самого большого из них. x, y , и z.
Вычтите его из t Если результат положительный, установите t и посчитайте его. Вернитесь назад и сделайте это снова.
Если нет, то больше нет больших значений, которые могут быть помещены туда, поэтому повторите упражнение со следующим самым большим., и так далее, пока вы не закончите x, y , и z.
Если в какой-то момент t = 0- вы закончили и нашли совпадение.

Чтобы найти следующие совпадения, начните со второго по величине и повторите процесс.

Попробуйте сделать это на бумаге, и вы поймете, что я имею в виду.

Я бы предположил, что это, вероятно, хорошо подходит для рекурсивного решения, но код зависит от вас - это ваша домашняя работа, в конце концов!