ฉันพบคำถามมากมายที่ถามเกี่ยวกับวิธีการค้นหาสี่เหลี่ยมที่ต่อเนื่องกันที่ใหญ่ที่สุดในอาร์เรย์ 2 มิติ และบางคำถามที่ถามถึงจำนวนสี่เหลี่ยม แต่คำถามเดียวเท่านั้นที่เกี่ยวข้องกับการค้นหาพิกัด ความกว้าง และความสูงของสี่เหลี่ยมทั้งหมดที่จำเป็น ครอบคลุมพื้นที่ 1 วินาทีใน 2D ของ 1 วินาทีและ 0 วินาที
คำถาม (การค้นหาสี่เหลี่ยมในตารางบล็อก 2d) มีวิธีแก้ไข แต่ติดตามได้ยากเนื่องจากอ้างอิงบล็อกโค้ดภายนอก
ฉันกำลังจัดการกับอาร์เรย์ 2 มิติที่ประกอบเป็นพิกเซลของตัวอักษร:
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0
0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0
0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0
0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0
ผลลัพธ์ที่ต้องการที่นี่จะเป็นดังนี้:
[[4,0,6,17],[7,0,16,2],[7,7,15,9],[7,15,15,17]]
โดยที่แต่ละอาร์เรย์มีพิกัดมือซ้ายบนและพิกัดมือขวาล่าง (วิธีการใด ๆ ที่ได้รับด้านซ้ายบน ความกว้าง และความสูงก็ใช้ได้เช่นกัน)
ใครสามารถให้ psudocode (หรือ Javascript) สำหรับคำถามที่ถามก่อนหน้านี้หรืออัลกอริทึมอื่นที่ใช้งานได้ หรือให้คำอธิบายเชิงลึกเพิ่มเติมเกี่ยวกับขั้นตอนที่จำเป็น