İç dikdörtgene zarar vermeden dikdörtgeni bölümleme


12

, eksene paralel bir dikdörtgendir.C

C1,,CnC1CnC

resim açıklamasını buraya girin

Bir dikdörtgen koruyucu bölüm arasında bir bölme olan , öyle ki , ikili-iç-ayrık eksene paralel dikdörtgenler ve her için : , yani, mevcut her bir dikdörtgen şu şekilde benzersiz bir yeni dikdörtgen içinde bulunur:CC=E1ENNnEii=1,,nCiEi

resim açıklamasını buraya girin

Küçük bir ile dikdörtgen koruyucu bir bölüm bulmak için bir algoritma nedir ?N

Özellikle, parçaları olan bir dikdörtgen koruyucu bölüm bulmak için bir algoritma var mı?N=O(n)

Yanıtlar:


4

YENİ CEVAP: aşağıdaki basit algoritma asimptotik olarak en uygunudur:

dikdörtgenlerinin her keyfi olarak, dikdörtgenler birbirinden ayrık kalacak şekilde mümkün olduğunca .Ci

Delik sayısı en fazla . Delik sayısının en az olduğu konfigürasyonlar olduğu için bu asimptotik olarak optimaldir .k2kO(k)

Kanıtlar bu yazıda bulunmaktadır .


ESKİ CEVAP:

Aşağıdaki algoritma, optimal olmamakla birlikte, parçaları olan bir dikdörtgen koruyucu bölüm bulmak için yeterlidir .N=O(n)

Algoritma , dikdörtgen başlatılan doğrusal bir çokgen ile çalışır .PC

Aşama 1: Bir dikdörtgen al bir Batı sınırına bitişik olan (yani, başka bir dikdörtgen var batı tarafı arasında ve bir batı sınırı ). Yeri içinde o batı sınır temas dek ve uzatılmasına . Let için ( ) gerilmiş versiyonu . Let . Faz 1'i tüm kadar kez tekrarlayın.CiPCjCiPCiPPEii=1,,nCiP=PEinnorijinal dikdörtgenler yerleştirilir ve gerilir. Aşağıdaki resimde, dikdörtgenlerin yerleştirilmesi için olası bir sıra :C1,C2,C4,C3

resim açıklamasını buraya girin

Şimdi , doğrusal bir çokgendir (muhtemelen bağlantısı kesilmiş), şöyle:P

resim açıklamasını buraya girin

I sayısı iddia içbükey köşeler de en fazla olduğu . Bunun nedeni, gerilmiş bir dikdörtgen her çıkarıldığında 3 olasılık vardır:P2nP

  • 2 yeni içbükey köşe eklendi ( yerleştirirken gibi );C1,C4
  • 3 yeni içbükey köşe eklenir ve 1 çıkarılır ( gibi );C3
  • 4 yeni içbükey köşe eklenir ve 2 tanesi kaldırılır ( gibi ).C2

2. Aşama: Bölme varolan algoritma kullanılarak eksene paralel dikdörtgenler içine (bkz Keil 2000, sayfa 10-13 ve Eppstein 2009, sayfa 3-5 bir inceleme için).P

Keil, minimal bir bölümdeki dikdörtgen sayısının 1 + içbükey köşe sayısı ile sınırlı olduğunu söyleyen bir teoriden bahsediyor. Bu nedenle, bizim durumumuzda sayı en fazla ve bölümdeki dikdörtgenlerin toplam sayısı .2n+1N3n+1


Bu algoritma uygun değil. Örneğin, yukarıdaki örnekte optimal çözüm iken verir . Yani iki soru kalıyor:N=13N=5

A. Bu algoritma doğru mu?

B. Optimal bulmak için bir polinom-zaman algoritması var mı , yoksa en azından daha iyi bir yaklaşım mı?N


Faz 1'de, her biri tam olarak bir ilk dikdörtgen içeren ve başka bir üst üste binmeyen bölüm hücreleri eklersiniz. 2. aşamada, kalan alanı bölümlersiniz, böylece 2. aşamada oluşturulan hücreler ilk dikdörtgenin hiçbiriyle kesişmez. Doğruluk kanıtı oldukça basit görünüyor ya da bir şey mi kaçırdım?
Boson

@ Emin olmadığım nokta, içbükey köşe sayısının en fazla . Yazdığım gibi sadece 3 olasılık olduğu "açık" gibi görünüyor, ancak başka olasılıkları da kaçırmış olabilirim. 2n
Erel Segal-Halevi
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.