LINUX.ORG.RU

Геометрическая задача. Дополнено важными условиями.

 


0

2

Убейте старый пост Геометрическая задача. Без тригонометрии ) - он кривой, в этом поправлена логика.

Вот система чёрных прямоугольников: http://savepic.ru/9752483.png (игнорируйте красный).

Свойства системы чёрных прямоугольников.

  • В 2D мире есть N непересекающихся чёрных прямоугольников. N известно вначале, может быть любым, не может меняться (их нельзя добавлять-удалять). Известны и их начальные координаты.
  • Чёрные не могут вращаться.
  • Чёрные не никогда не должны пересечься.
  • Чёрные могут расширяться в любых направлениях, сдвигая границы от своего центра. Границу нельзя двигать к своему центру. (можно только так: верхнюю границу - вверх, нижнюю - вниз, левую - влево, правую - вправо). Можно не все границы. Можно вообще не расширяться.

Действие

  • Втыкаем в этот 2D мир произвольный красный прямоугольник в любое место. Он имеет право пересекать чёрные. Система чёрных стремится покрыть красный.
  • не обязательно, чтобы в покрытии приняли участие все чёрные — можно обойтись хоть одним, если возможно. В некоторых случаях красный может целиком попасть в какой-то один чёрный, тогда задача покрытия красного решится сама собой без расширений кого-либо.

Примеры вставки красного:

Пример 1. Верхний чёрный может поехать вниз и закрыть красный, не пересекаясь с чёрным собратом. Правый не может принять участие в покрытии красного, т.к. заденет чёрного собрата.
http://savepic.ru/9740195.png

Пример 2. Никто не может расшириться, чтобы накрыть красный. При попытке любого чёрного расшириться, произойдёт наезд на чёрного собрата (уменьшаться нельзя). Это драма.
http://savepic.ru/9752483.png

Пример 3. Чёрные могут втроем покрыть красный.
http://savepic.ru/9722787.png

На всех картинках выше показана ситуация вставки красного на момент вставки красного - до того, как чёрные его попытались покрыть.

ЗАДАЧА Доказать, что любая система чёрных может отработать так, что либо закроет красный целиком, либо оставит на нём прямоугольные дырки - одну или более.

Ценные комменты из прошлого топика:

http://i.imgur.com/08LchdF.png
синие области никогда не будут покрыты черными -> кусок непрямоугольный

Да, это нормальная ситуация - куски остались прямоугольные.

Нужно доказать что при максимальном заполнении плоскости любым количеством прямоугольников в результате могут остаться незаполненные области только прямоугольной формы, тогда совершенно не важно где будет красный, его пересечение с не заполненной областью всегда будет прямоугольником ибо пересечение двух прямоугольников.

По поводу черных, вариант когда остается незаполненная область возможен только аналогичный второму примеру, то есть из 4 прямоугольников, и незаполненная область получается прямоугольной формы.

По сути нужно доказать, что невозможна ситуация с построением невыпуклой незаполненной области. Возможно, достаточно рассмотреть все несколько ситуаций взаимного расположения пяти прямоугольников и показать, что невозможна расстановка с невыпуклой незаполненной областью. А затем показать, что случаи с бОльшим количеством прямоугольников сводятся к случаям с пятью.

unC0Rr ★★★★★
()
Ответ на: комментарий от unC0Rr

Из пяти прямоугольников один обязательно остаётся зажатым только с двух противоположных сторон, а значит расширяется по третьей стороне до другого прямоугольника, сводя ситуацию к четырём прямоугольникам, которая очевидно не даёт невыпуклую область.

unC0Rr ★★★★★
()

Блин, ну привели Вам доказательство же... что неясно?

AIv ★★★★★
()

Там доказать самому легче, чем описать тут на форуме.

Начни с того, что если область не прямоугольная, то у неё непременно есть угол 270 градусов. Этот угол образуется каким-то одним прямоугольником. Если начать отсюда плясать, не забывая, что область должна быть неуменьшаемая, то все легко получается.

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

Формализовать данное доказательство достаточно просто. От противного - допустим, при заполнении останется дырка невыпуклой формы. Легко видеть, что для того, чтобы конструкция оставалось жесткой, каждая сторона ограничивающих дырку прямоугольников должна опираться как минимум на один соседний прямоугольник.При обходе дырки по периметру в любом направлении видно, что данное условие невыполнимо - в случае невыпуклой фигуры как минимум одна сторона не опирается ни на что, кроме дырки. Следовательно, дырки могут быть только выпуклой формы - то есть прямоугольные. ЧТД

MBK
()
Ответ на: комментарий от MBK

Классное доказательство, тянет на ответ )

hlamotron
() автор топика

N прямоугольников. Максимально увеличь каждый. Стороны или упирается в сторону другого прямоугольника или двигается неограничено. Остаются только прямоугольники. Добавляешь красный. Пересечение прямоугольника и конечного множеста прямоугольников = конечное множество прямоугольников. Всё.

Не работает для бесконечного N.

tyakos ★★★
()
Ответ на: комментарий от MBK

Если на правой картинки самый правый прямоугольник растянуть вверх до предела, то он примкнёт к самому верхнему прямоугольнику на этой картинке и останется прямоугольное пятно.

hlamotron
() автор топика
Ответ на: комментарий от hlamotron

Если на правой картинки самый правый прямоугольник растянуть вверх до предела, то он примкнёт к самому верхнему прямоугольнику на этой картинке и останется прямоугольное пятно.

Ну,собственно это и иллюстрирует картинка. В общем, (и тут Остапа понесло ;) ) совсем строгое доказательство. Снова от противного: Пусть существует красная дырка невыпуклой формы с N вершинами из которых M - выпуклые. Она ограничена прямоугольниками, которые касаются ее своими ребрами. Общее количество ребер касания - K. Легко видеть, что всегда M<=N<=K. Ребро касания закреплено жестко и не может двигаться, если оно опирается как минимум на одну выпуклую вершину красной дырки. То есть, вся конструкция будет жесткой только при строгом равенстве M=N=K т.е. все вершины выпуклые - дырка имеет прямоугольную форму. ЧТД

MBK
()
Ответ на: комментарий от tyakos

Как твоё решение описывает этот случай?

Да никак. Этот случай не подходит под условие задачи. Неравенство M<=K справедливо только для «предельных» устойчивых конструкций, когда каждое ребро красного многоугольника полностью покрыто ребрами окружающих прямоугольников. «Непредельные» случай (один из которых изображен на рисунке) Кэп отбрасывает, поскольку легко видеть, что если хотя бы одно ребро красной фигуры не касается полностью ребер черных, то ребра, прилегающие к его вершинам неустойчивы

MBK
()
Ответ на: комментарий от tyakos

В каком месте?

Неравенство N<=K справедливо только для «предельных» устойчивых конструкций, когда каждое ребро красного многоугольника полностью покрыто ребрами окружающих прямоугольников. «Непредельные» случай (один из которых изображен на рисунке) Кэп отбрасывает, поскольку легко видеть, что если хотя бы одно ребро красной фигуры не касается полностью ребер черных, то ребра, прилегающие к его вершинам неустойчивы

Мы ведь пытаемся доказать для устойчивых состояний, не так ли?

MBK
()
Ответ на: комментарий от tyakos

Нет. Для всех.

Значит, кто-то из нас двоих неправильно понял условие задачи и этот кто-то - явно не я. Ибо

ЗАДАЧА Доказать, что любая система чёрных может отработать так, что либо закроет красный целиком, либо оставит на нём прямоугольные дырки - одну или более.

То есть, если принимать во внимание все непредельные случаи, когда черным есть куда расширяться дальше, то вообще задача теряет смысл - таких случаев можно придумать overдофига и дырки будут самой разнообразной формы. Я, конечно, не рассматриваю вариант, что вы все прекрасно понимаете, а просто троллите меня. ;)

MBK
()
Ответ на: комментарий от MBK

Очевидно, что черным всегда есть,куда расширяться дальше.

В моём примере можно легко добавить еще 2 прямоугольника, ограничивая движение.

tyakos ★★★
()
Ответ на: комментарий от tyakos

В моём примере можно легко добавить еще 2 прямоугольника, ограничивая движение.

Так добавьте, чтобы ваш случай подошел под условие задачи и будем обсуждать полученный вариант. А пока ваш вариант не подходит - прямоугольникам есть куда расширяться в сторону закрытия красного.

MBK
()
Ответ на: комментарий от MBK

У тебя с логикой проблемы. Пример удовлетворяет условия, а твоё решение работает только для частного случая. У меня всё.

tyakos ★★★
()
Ответ на: комментарий от tyakos

У тебя с логикой проблемы.

Никаких проблем. Я привел строгое доказательство для предельного случая, который и требовался в условии задачи. Пусть топикстартер поправит меня, если не так. И показал, что для непредельного случая формулировка задачи бессмысленна вообще.

У меня всё.

Если это такой достойный слив, то я оценил. :-D

MBK
()
Ответ на: комментарий от tyakos

У тебя с логикой проблемы.

нет, у тебя, тонкий прямоугольник в твоей картинке может расширятся вниз, покрывая красный, оставляя прямоугольную область на красном

outsider ★★
()
Ответ на: комментарий от outsider

И что? Я привел решение задачи. Этот пример иллюстрирует неправильность решения мбк. Это не контрпример для задачи.

tyakos ★★★
()
Ответ на: комментарий от outsider

В каком месте? Есть 3 черных прямоугольника, 1 красный. Черные не пересекаются.

ЗАДАЧА Доказать, что любая система чёрных

Любая система

Можно хоть N = 1 взять, но этот случай тривиален.

tyakos ★★★
()
Ответ на: комментарий от tyakos

Но в условиях они могут расширяться, покрывая красный. После расширения тонкого прямоугольника вниз, условно можно сказать что черные соприкасаются со всеми гранями красного и получается как у МВК

Она ограничена прямоугольниками, которые касаются ее своими ребрами. > Общее количество ребер касания - K. Легко видеть, что всегда M<=N<=K. > Ребро касания закреплено жестко и не может двигаться, если оно опирается как минимум на одну выпуклую вершину красной дырки. То есть, вся конструкция будет жесткой только при строгом равенстве M=N=K т.е. все вершины выпуклые - дырка имеет прямоугольную форму. ЧТД

outsider ★★
()
Ответ на: комментарий от outsider

Но в условиях они могут расширяться, покрывая красный.

Пусть расширяются. Это никак не связано с начальными условиями - системой черных прямоугольников.

После расширения тонкого прямоугольника вниз,

Это должно описывать решение задачи, а не ты, чтобы подогнать под «решение».

tyakos ★★★
()
Ответ на: комментарий от tyakos

Пусть расширяются.

Дак тогда решение МВК правильное.

Это должно описывать решение задачи, а не ты, чтобы подогнать под «решение».

так я и написал, что ты привел не правильную картинку, не соответствующую первоначальному заданию.
Что и до этого сказал МВК

Как твоё решение описывает этот случай?

Да никак. Этот случай не подходит под условие задачи.

outsider ★★
()
Ответ на: комментарий от tyakos

Решение вот тут:

Эээээ... Где тут решение?

N прямоугольников. Максимально увеличь каждый. Стороны или упирается в сторону другого прямоугольника или двигается неограничено. Остаются только прямоугольники. Добавляешь красный. Пересечение прямоугольника и конечного множеста прямоугольников = конечное множество прямоугольников. Всё.

Не работает для бесконечного N.

На самом деле это просто формулировка топиковой задачи другими словами. А решения тут никакого нет. Тем более вы ж сами писали

Максимально увеличь каждый.

Ваша картинка даже ему не соответствует - как минимум пара прямоугольников увеличивается до закрытия красного - т.е. не максимально. Мое же докозательство именно для случая максимального увеличения.

MBK
()
Ответ на: комментарий от outsider

Дак тогда решение МВК правильное.

Как оно описывает поведение невыпуклого угла? Никто мне так и не ответил на этот вопрос.

так я и написал, что ты привел не правильную картинку, не соответствующую первоначальному заданию.

Приведи цитату из первоначального поста, которое запрещает такое размещение.

Как твоё решение описывает этот случай?

Да никак. Этот случай не подходит под условие «РЕШЕНИЯ».

У вас проблемка в голове, господа. Вы не можете понять, что вы так и не доказали, что любой случай из задачи сводится к ««предельным» устойчивым конструкциям», которые являются лишь частным случаем.

tyakos ★★★
()
Ответ на: комментарий от tyakos

А, вон оно что

У вас проблемка в голове, господа. Вы не можете понять, что вы так и не доказали, что любой случай из задачи сводится к ««предельным» устойчивым конструкциям», которые являются лишь частным случаем.

То есть, вы считаете, что система может вообще не прийти в устойчивое состояние никогда? Что ж, и на эту хитрую жабу у нас есть свой пролетарский хрущ с винтом. Я так понимаю, ваш главный аргумент - плоскость то бесконечная, значит, прямоугольники могут расширяться бесконечно и значит система де в равновесие не придет никогда? Упростим задачу без ущерба для общего смысла - допустим, плоскость не бесконечная, а просто очень огромная, несоизмеримо большая размерам красного и любого другого прямоугольника, а красный прямоугольник находится в центре ее - устраивает такое допущение? Не надо только вопить, что это тоже частный случай, при желании можно доказать и для бесконечного, но только формулировку задачи придется чуть подкорректировать. Так вот, такая система гарантированно придет в равновесие и после этого равновесия по вышеприведенному моему доказательству (а не по вашей формулировке условия) останутся одни прямоугольные дырки. Есть какие то возражения?

Впрочем

Приведи цитату из первоначального поста, которое запрещает такое размещение.

запросто

Доказать, что любая система чёрных может отработать так, что либо закроет красный целиком, либо оставит на нём прямоугольные дырки - одну или более.

Нарисованная вами система может отработать так, Кэп гарантирует это - чтд

MBK
()
Ответ на: комментарий от tyakos

Более того, если внимательно перечитат ваше «доказательство», можно увидеть безумную чушь:

Пересечение прямоугольника и конечного множеста прямоугольников = конечное множество прямоугольников

Вы ж своим примером эту свою фразу опровергаете - пересечение красного прямоугольника и черных прямоугольников у вас явно не «конечное множество прямоугольников» Или вы подразумевали «фигура, образованная объединением конечного множества прямоугольников»? Так такого точно в условии нет :-D))

MBK
()
Ответ на: комментарий от MBK

Я не пожалел времени всё преречитать и разобраться. Теперь ясно, почему то, что ты пишешь мне кажется абсолютной чушью и наоборот. Я не понял, что ты подразумеваешь под «предельной устойчивой конструкцией», так как у тебя ребро ограничивает только одну дырку, хотя это может быть не так. Твоё решение локально, и, скорее всего, его можно доработать.

Тебе, судя по всему, также не ясно моё решение. В нём идёт речь как раз о том, что при максимальном увеличении прямоугольников будет достигнуто устойчивое положение после конечного количества увеличений, а незанятые области будут прямоугольниками, что и даёт решение.

tyakos ★★★
()
Ответ на: комментарий от tyakos

Я не понял, что ты подразумеваешь под «предельной устойчивой конструкцией», так как у тебя ребро ограничивает только одну дырку, хотя это может быть не так. Твоё решение локально, и, скорее всего, его можно доработать.

Вполне себе глобально. Еще раз поясняю - ребро закреплено устойчиво если оно хотя бы в одной выпуклой вершине упирается в другой прямоугольник - что тут не так? В невыпуклой вершине ей просто некуда упираться - со всех сторон там черных прямоугольников нет по определению.

В нём идёт речь как раз о том, что при максимальном увеличении прямоугольников будет достигнуто устойчивое положение после конечного количества увеличений, а незанятые области будут прямоугольниками, что и даёт решение.

Мое доказательство приведено как раз для случая устойчивого положения при максимальном увеличении прямоугольников, когда они упираются друг в друга. Повторяю, у вас нигде не доказывается, что оставшиеся дырки будут именно прямоугольными, а у меня как раз доказывается именно этот факт.

MBK
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.