У нас є сітка . У нас є колекція прямокутників на цій сітці, кожен прямокутник може бути представлений у вигляді бінарної матриці -by- . Ми хочемо покрити сітку тими прямокутниками.
Чи завершена версія рішення цього набору для вирішення проблеми NP?
- Введення: Колекція прямокутників на сітці (розмір вводу: ) і
- Вихід: Підмножина з і що містять для кожної комірки щонайменше один прямокутник, що покриває її.
Я виявив, що 1D випадок ( ) може бути вирішений в поліноміальний час за допомогою динамічного програмування: будь-яке оптимальне покриття буде об'єднанням
- оптимальне покриття для деякої підпроблеми покриття першого комірок .
- 1D прямокутник, тобто інтервал, що охоплює залишки комірок.
Я не думаю, що проте DP може працювати для 2D проблеми: для 1D проблеми у вас є підпроблеми для вирішення, але для 2D у вас є ( N 1 + N 2підпроблеми (кількість решіток решітки Північно-Східної сітки).
Я думаю, що проблема може бути NP, але я не впевнений (хоча це здається складніше, ніж P), і мені не вдалося знайти поліноміальне зменшення від NP-повної проблеми (3-SAT, Vertex Cover, ...)
Будь-яка допомога чи підказка вітається.
|=
=|