Упаковка прямоугольных данных изображения в квадратную структуру

Есть действительно три условия, которые существуют.

  1. Пользователь не выбрал поле
  2. Пользователь выбирает один
  3. Пользователь выбирает женатого.

Если у вас есть проверка, а это означает, что пользователь должен установить флажок, то вы можете отказаться от первого условия. Исходя из этого, можно определить, когда пользователь выбрал ящик, что он выбрал, зная состояние только одного из ящиков. Поэтому, если у вас есть кнопка, которая проверяет валидацию, вы можете сделать что-то вроде этого.

<Button 
  title={'check married status'}
  onPress={() => {
   if (!this.state.single && !this.state.married) {
     alert('Please check a box)
   } else {
     // we only need to check one of them
     let marriedStatus = this.state.married ? 'married' : 'single';
     alert(`You are ${marriedStatus}`)
     // then you can do what you want with the marriedStatus here
   }
  }}
/>
20
задан 4 November 2008 в 23:57
поделиться

2 ответа

Я должен был сделать эту самую вещь, которую Вы описываете.

Это - код Python, который я использовал, это - рецепт в Поваренной книге Python:

Рецепт 442299: упакуйте повторные изображения различных размеров в одно изображение

8
ответ дан 30 November 2019 в 01:13
поделиться

Вашу проблему в 1D называют Упаковкой Мусорного ведра. Возможно, это - хорошее начало для Вашего поиска.

Примечание, которое проблему Вы хотите решить, действительно твердо (это является NP-трудным). Таким образом, Вы не должны искать оптимальное решение, но некоторый умный heuristical алгоритм.

я думаю, что восходящее динамическое программирование возможно для 1D упаковка мусорного ведра, но не для 2D случая.

Вы могли думать об упрощении Вашей проблемы, только решая 1D проблема, делая ограничения как вырезание структур в несколько (переменная измеренный) части в 1 размере.

Другая возможность выполняет метаэвристическую оптимизацию на нем, как Эволюционные Алгоритмы или Оптимизация Роя Частицы.

6
ответ дан 30 November 2019 в 01:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: