Гхм, у вас в canvas-e пикселы с цветами. Они про ваши символы - вообще не в курсе. Вы либо помните, какой символ в какие координаты нарисовали, либо OCR-ом занимаетесь, либо удовлетворяетесь "экранной лупой" - тупо берёте область в достаточной окрестности от точки, в которую ткнул юзер.
В вашем абстрактном примере - пересчитайте экранные координаты в сеточные (если начало координат в общей точке - целочисленным делением на шаг сетки).
И да, если у вас в conf.d лежит и mpm.itk.conf и mpm.itk.conf.save и грузятся оба (на include /etc/apache2/conf.d/* , например) - могут быть проблемы, так как вы не знаете, в каком порядке они интерпретируются.
А, это чудеса имени переносов строк, сори.
Такое ощущение, что у вас в apache2.conf или в mpm.itk.conf.save есть какой-то открываюзий тег (ну, типа ) и нет соответствующего закрывающего, или наоборот.
Из самого конца (последний элемент) в самое начало (сделать первым) - O(1), очевидно. Тупо сдвинуть указатели на начало и конец. А вот в общем случае, передвинуть и вставить "куда-то" - O(n), да, согласен.
Я бы предположил, что контора платит за трафик и ваш торрент тупо выжрал дневную норму и мониторилка прислала админу аларм. Дальше закрыть торрент - дело пары кликов или двух строчек в шелле. Влезать внутрь переписки во вконтактике скорее всего админу будет лень - это вам еще CA подсовывать нужно, MITM организовывать, отлаживать это всё. Разве что руководство пропилось на готовое решение, которое автоматизирует "вот это всё" тоже до пары кликов.
В вопросе было надо, чтобы просто работало, я так понимаю. И это без проблем решается именно превращением одного из рутеров в свич, по сути. Если надо что-то еще, типа «доступны только некоторые IP-ники из сети 2» или «приоритет при использовании канала только для сети 2» или какие-нибудь vpn-ы нужны, или еще чего нелинейное — берите MikroTik не самый дешевый. (750-й, к примеру)
Хм. А раз так, то у вас небось нет возможности на клиентах сделать route add на вторую сетку.
Смотрите, отключите на втором роутере dhcp и воткните провод, идущий от первого ко второму, не в WAN а в LAN порт. WAN вообще не подключайте никуда на втором! Тогда второй роутер, по сути дела, будет работать просто свичем с WiFi-ем. Все IP будут из диапазона, прописанного на первом, и все довольны (все в одном сегменте). Когда и если поймете, что вам этого не хватает, уже наберете ресурса и мотивации для покупки нормального железа.
Чтобы маршрутизацию настроить нужно, очевидно, три вещи:
1. Понимание целей, чего вы хотите достигнуть
2. Понимание того, какие средства возможно для этого использовать
3. Аппаратура, поддерживающая настройку указанных средств в указанных целях.
По пунктам
1. Берете и выписываете, кто куда должен ходить, по каким протоколам, в каком виде получать ответы.
2. Роутить более-менее вменяемо умеют почти любые из комповых ОС (Linux, Windows и FreeBSD — точно, документации в сети навалом) и некоторое специфичное (Cisco, Juniper) и не очень (Dlink, LinkSys,ASUS и прочие SOHO)-железки. У всякого SOHO в голове обычно linux и если до него всерьез дотянуться (e.g. получить консоль и научиться сохранять конфигурацию до «после следующего ребута») — то на них почти всегда можно настроить чего угодно, достаточно только документацию по линуксовому стеку по этому поводу изучить. У Cisco тоже чертова прорва документации на сайте есть, если вам посчастливилось иметь их железки — use google.
3. Смотрите, что у вас есть из железа, хватает ли вам его из коробки под ваши задачи
(некоторые SOHO роутеры умеют RIP из коробки, видимо их авторы предусмотрели вариант WAN->LAN соединений при правильной простановке галочек. Некоторые умные свичи умеют роутить — в небольших сетях это даже применимо. Только не вздумайте поднимать на дешевом оборудовании BGP — настрадаетесь. Видел сие на ответной стороне линка… Смотрите, есть ли у вас возможность поставить виртуалку на каком-нибудь компе и есть ли коммутатор или роутерчик, умеющий 802.1q VLAN — тогда можно обойтись одной сетевухой. )
Аккуратно выяснить, с какихайпишников лезут на сайт сотрудники самой фирмы и показать именно им их дыру. С аккуратным дисклэймером и контактами, чтобы было понятно, к кому обращаться, чтобы залатать. :)
В вашем абстрактном примере - пересчитайте экранные координаты в сеточные (если начало координат в общей точке - целочисленным делением на шаг сетки).