Мы имеем следующие пункты для пользователя, чтобы выбрать из:Найти номер в сумме мощностей двух
- пункта 1
- пункт 2
- пункт 3
- предмета 4
Когда пользователь выбирает товар (ы) и отправляет его, мы сохраняем информацию, такую как
- , если элемент1 и элемент2 (2^1, 2^2) выбраны, то 2 + 4 = 6
- , если элемент1 и элемент3 (2^1, 2^3), а затем 2 + 8 = 10
- предположим, что, если пользователь выбирает все элементы, затем 30.
Я хочу, чтобы проверить, выбран ли пользователь по item1 или item2 или item3 или item4 из уже выбранных значений. Как найти это в C# или ms-sql или в javascript?
Рассмотрите номер в бинарной форме. Каждая цифра, которая установлена в 1, является выбранным элементом. Каждая цифра, которая установлена в 0, представляет собой невыбранный элемент. –
Итак, вы знаете только конечную сумму, и вы хотите выяснить, какие элементы были выбраны пользователем. Скажем, если 'sum = 12', то ваш результат будет таким, чтобы были выбраны item2 и item3. Я прав?? –
Исправление: вы говорите «если пользователь выбирает все элементы, а затем 30», но это должно быть «если пользователь выбирает все предметы, а затем 15» - потому что ваш наименьший элемент заказа должен быть представлен 2^0, а не 2^1 –