• Задание по программингу

    @MikhailEdoshin
    Как мне кажется, можно попробовать следующее. Когда три круга с радиусами a, b, c касаются, их радиусы образуют треугольник со сторонами a+b, b+c и с+a. (Радиусы касающихся кругов лежат на одной прямой, отсюда один шаг до треугольника.)

    Зная стороны треугольника, можем вычислить его углы. Вычислим для начала угол в центре a. Возьмем следующий круг d и приставим его к a и c. Образуется еще один треугольник из кругов a, c и d. Мы опять-таки можем вычислить его угол. Очевидно, мы можем таким образом укладывать круги вокруг a до тех пор, пока сумма внутренних углов не превысит 360 градусов.

    Unlimited Free Image and File Hosting at MediaFire
    После этого мы можем начать укладывать оставшиеся круги вокруг b. У него к этому времени уже будет занята часть круга — кругами a, c и, возможно, последним кругом, уложенным с другой стороны a.

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

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

    Это не полное решение (алгоритма, кроме перебора, я не предложу, кроме того, возможны варианты, когда в промежуток между тремя касающимися кругами можно всунуть еще маленький кружок, так что алгоритм, возможно, будет довольно сложным). Но начало, кажется, хорошее.
    Ответ написан
    3 комментария
  • Начальная зеркалка или цифрокопакт?

    @impass
    имхо, среди наиболее приемлемых компромиссных решений между топовыми цифрокомпактами и бюджетными зеркалками стоит рассматривать разве что следующие гибридные/беззеркальные модели камер от Sony и Panasonic
    Sony Alpha A55 (также ожидается выход моделей A35 и A77)
    Sony NEX-3 / NEX-5
    Panasonic DMC-G3
    Panasonic DMC-GF3
    Ответ написан
    Комментировать
  • Sphinx: подобие нестрогих запросов?

    Shedar
    @Shedar
    Посмотрите «quorum matching operator».
    sphinxsearch.com/docs/2.0.1/extended-syntax.html
    Т.е. в запросе будет что-то вроде «humour video»/1
    Ответ написан
    4 комментария
  • Простой торрент-трекер с рейтингом?

    atomlib
    @atomlib
    Посмотрите на рутрекер, как видно, движок TorrentPier ( torrentpier.info/ ) позволяет не только давать анонимным пользователям качать торрент-файлы, но и указывать размер раздач, для которых это будет доступно. Возможно, вы сможете подсмотреть, как это реализовано там.
    Ответ написан
    Комментировать
  • Учим фотошоп

    pryanic
    @pryanic
    Одним из лучших авторов считаю Скотта Келби. Несколько книг по цветовой корекции, по лайтруму…
    Ответ написан
    Комментировать
  • Fastcgi в php

    zizop
    @zizop
    До сих пор не утихают споры по этому вопросу. Однозначного мнения нет, всё зависит от задачи, и от того, насколько ваш код оптимизирован к работе в fastCGI режиме. Вот материалы, которые помогут вам разобраться в теме:
    Статья Дмитрия Котерова про php fast-cgi
    Вриант от создателя phpDaemona
    Статья по настройке php5-fpm
    Статья Ильи Кантора по скрещиванию Symfony и Fast-Cgi

    По поводу тестов и сравнения:
    php-fpm VS apache2+mod_php
    Apache + mod_php compared to Nginx + php-fpm
    Comparing Nginx+PHP-FPM to Apache-mod_php
    Битва PHP: Apache vs PHP-FPM

    Некоторые соображения:
    Вся технология PHP-FCGI базируется на чем угодно, только не на том, что из себя представляет fast cgi для таких например языков как Perl & C со своими интерфейсами скриптинга.

    Если уравнять условия apache и php-fpm, php-fpm единственное в чем выигрывает, то это в памяти, ито за счет двух дополнительных процессах апача. Остальные выигрыши довольно сомнительны.

    Если с апача убрать обработку статики и всего лишнего (например с помощью nginx), он довольно шустро обрабатывает скрипты.

    С другой стороны, в PHP-FPM довольно красиво реализована схема chroot’а и запуска из под отдельных юзверей, что повышает безопасность. Но он проигрывает в IPC, т.к. пока не умеет изменять количество воркеров пропорционально нагрузке. Если поставить слишком много воркеров, будет overhead по CPU и памяти (за что грешат на апач), если поставить слишком мало – будут отказы в обслуживании. Ну впрочем, кому резонно вручную следить за процессами FPM, те этим занимаются.
    Ответ написан
    Комментировать
  • PHP и быстрая база данных в файлах

    @Hizof
    В сторону XML файлов не смотрели?
    Ответ написан
    3 комментария
  • Сортировка массива?

    bit
    @bit
    Писал аналогичный калькулятор, но со скобками. Сам себе задал такой тест для практикума при изучении C. По-моему проще велосипеда, чем обратная польская запись (она-же постфиксная) для такой арифметики еще не придумали. Все остальное — усложнения, дающие больше путаницы, чем результативности.
    For fun — посмотрите в сторону языка Fort. Там вся арифметика постфиксная :)
    Ответ написан
    Комментировать