Недавно с помощью знакомого откопал, как я понимаю, старую задачу, условие которой формулируется следующим образом: Имеется картина, к которой обоими концами прикреплена длинная веревка. Необходимо повесить её на стене с помощью N гвоздей таким образом, чтобы при удалении любого (одного) гвоздя картина и веревка падали.
Для случая, когда гвоздь всего один, задача решается элементарно.
Будем разбираться, как её решить для 2-ух и более гвоздей. Рассмотрим ситуацию с 2-мя гвоздями. Обозначим их A и B. Введем операции (+) и (-), когда веревка обматывает гвоздь по часовой и, соответственно, против часовой стрелки. Таким образом, A + B означает, что гвозди A и B обмотаны веревкой по часовой стрелке 1 раз (по отдельности или вместе - в данном случае это не играет особой роли).
Также понятно, что A + (-A) = 0, так как мы оборачиваем гвоздь А по часовой стрелке, и тут же снимаем с него веревку против часовой стрелки. Итоговое значение 0 означает, что картину с веревкой ничего не удерживает, и они гарантированно упадут.
Удаление гвоздя будем отмечать заменой соответствующей буквы на число 0 (гвоздь перестает играть роль в процессе удержания картины). Таким образом, для того, чтобы условие задачи выполнялось, необходимо получить такую формулу, когда замена какой-либо одной (любой) буквы, обозначающей гвоздь, приводит всю формулу к нулевому значению.
Планирую писать не только о программировании, но и о прочих, иногда не совсем совместимых вещах. Например, о музыке, которую я тоже очень люблю )
четверг, 29 июля 2010 г.
суббота, 24 июля 2010 г.
Фильм "Рядовой Александр Матросов"
Сегодня посмотрел старый советский фильм "Рядовой Александр Матросов", снятый в 1947 году. Ну что сказать... Конечно, сейчас этот фильм выглядит немного наивным, и та сюжетная линия, по которой он построен, полностью совпадает с историей жизни Александра Матросова, широко известной в советское время. Это уже после развала СССР
начались какие-то подвижки в сторону открытия ранее неизвестных фактов из его биографии (оказывается, что и настоящее имя героя не Александр Матросов, и родился он совсем не в Днепропетровске, и подробности самого подвига весьма туманны).
Но с другой стороны - а так ли это важно на самом деле ? Главное - человек отдал самое дорогое, что у него есть - жизнь - за свободу Родины, за то, чтобы мы с вами могли сегодня жить...
Так что поклонимся героям Великой Отечественной войны. Всем - и тем, имена которых известны, и тем, чьи останки до сих пор лежат не найденными в земле.
Вечная Слава героям.
начались какие-то подвижки в сторону открытия ранее неизвестных фактов из его биографии (оказывается, что и настоящее имя героя не Александр Матросов, и родился он совсем не в Днепропетровске, и подробности самого подвига весьма туманны).
Но с другой стороны - а так ли это важно на самом деле ? Главное - человек отдал самое дорогое, что у него есть - жизнь - за свободу Родины, за то, чтобы мы с вами могли сегодня жить...
Так что поклонимся героям Великой Отечественной войны. Всем - и тем, имена которых известны, и тем, чьи останки до сих пор лежат не найденными в земле.
Вечная Слава героям.
пятница, 23 июля 2010 г.
Утилита для очистки ключевых слов KCleaner
На днях написал на C++ небольшую утилиту KCleaner (от Keys Cleaner) в помощь веб-мастерам и SEO-шникам. Она позволяет чистить базы кеев по спискам стоп-слов. Утилита консольная, работает в среде OS Windows (гарантированно проверял работу в Windows XP SP2).
Главный упор при её написании я делал на возможность обработки больших массивов данных с сохранением высокой скорости работы. Так, например, для обработки базы ключевиков объемом ~500 000 ключевых слов при файле стоп-слов объемом ~50 000 слов моей утилите требуется около 7-8 секунд на железе Sempron 2500 1.4GHz + 512MB RAM.
понедельник, 19 июля 2010 г.
Рассказ Густава Майринка "Звон в ушах"
Сегодня случайно в одном из ЖЖ-комментариев Ильи Прутова наткнулся на короткий рассказ Густава Майринка "Звон в ушах". Про Майринка, к сожалению, до сего дня практически ничего не знал, хотя фамилию писателя раньше уже слышал. Рассказ (написанный им, как оказалось, еще в 1903 году!) просто чудовищен по красоте. Очень здорово передана мрачная, угнетающая атмосфера, а последняя фраза ("Кто заткнет уши, может услышать, как звенит он внутри"), которая как бы повисает в воздухе, служит замечательным финальным аккордом.
Еще раз убедился, что даже в небольшом по размеру литературном произведении можно передать очень много всего. А этот рассказ, на мой взгляд, стоит иных многостраничных романов и повестей. В общем, рекомендую к прочтению. Ну и, так как размер рассказа очень мал, привожу ниже целиком этот сгусток мастерства Автора:
Еще раз убедился, что даже в небольшом по размеру литературном произведении можно передать очень много всего. А этот рассказ, на мой взгляд, стоит иных многостраничных романов и повестей. В общем, рекомендую к прочтению. Ну и, так как размер рассказа очень мал, привожу ниже целиком этот сгусток мастерства Автора:
воскресенье, 18 июля 2010 г.
Монетизация блогов
В последнее время много читал о различных способах монетизации блогов. Как я понял, существуют самые разные варианты, но наиболее простой и удобный, как мне кажется -
это воспользоваться услугами специальных Интернет - сервисов, каковым, например, является сервис Блогун.
Преимущество его использования заключается, как минимум, в том, что все функции по монетизации он берет на себя, а блоггеру остается лишь заниматься своим любимым делом - просто писать интересные посты. Разумеется, выступая в качестве посредника, какую-то часть возможной прибыли Блогун будет брать себе, но всё это меркнет на фоне тех удобств, которые предоставляет сервис. Кто еще не сталкивался с ним, может попробовать зарегистрироваться в этой системе. (Регистрация, кстати, очень простая и занимает буквально одну-две минуты.)
это воспользоваться услугами специальных Интернет - сервисов, каковым, например, является сервис Блогун.
Преимущество его использования заключается, как минимум, в том, что все функции по монетизации он берет на себя, а блоггеру остается лишь заниматься своим любимым делом - просто писать интересные посты. Разумеется, выступая в качестве посредника, какую-то часть возможной прибыли Блогун будет брать себе, но всё это меркнет на фоне тех удобств, которые предоставляет сервис. Кто еще не сталкивался с ним, может попробовать зарегистрироваться в этой системе. (Регистрация, кстати, очень простая и занимает буквально одну-две минуты.)
Эх, люблю я море... )
Недавно закончился у меня очередной отпуск. Провел его как обычно бестолково, за исключением поездки на море в Затоку на несколько дней.
Море, почему-то, очень люблю (сам не знаю, откуда такая страсть :)) Украинская Затока от нас достаточно близко, поэтому стараюсь ездить туда по мере возможности. В этот раз поездка прошла на удивление легко (на таможнях практически не стояли), да и в Затоке погода была отличная . Только в последний день было пасмурно, но когда немного обгоришь на Солнце, такая погода даже к лучшему :) В общем, удалось чуть отдохнуть, накупаться и назагораться. Сейчас вот смотрел фотографии, там сделанные.... и снова на море захотелось )) А ждать еще почти год, до следующего отпуска, как минимум )) Мда.... Ну всё, надо заканчивать просмотр, а то весь слюной изойду ))))
Море, почему-то, очень люблю (сам не знаю, откуда такая страсть :)) Украинская Затока от нас достаточно близко, поэтому стараюсь ездить туда по мере возможности. В этот раз поездка прошла на удивление легко (на таможнях практически не стояли), да и в Затоке погода была отличная . Только в последний день было пасмурно, но когда немного обгоришь на Солнце, такая погода даже к лучшему :) В общем, удалось чуть отдохнуть, накупаться и назагораться. Сейчас вот смотрел фотографии, там сделанные.... и снова на море захотелось )) А ждать еще почти год, до следующего отпуска, как минимум )) Мда.... Ну всё, надо заканчивать просмотр, а то весь слюной изойду ))))
пятница, 30 апреля 2010 г.
Задача об удалении элемента массива с получением максимального произведения оставшихся элементов
Вчера знакомый подкинул интересную задачку. Условие формулируется следующим образом:
===
Имеется непустой массив целых чисел. Необходимо удалить из него один элемент таким образом, чтобы произведение всех оставшихся элементов было максимальным.
===
Задачка показалась любопытной.
===
Имеется непустой массив целых чисел. Необходимо удалить из него один элемент таким образом, чтобы произведение всех оставшихся элементов было максимальным.
===
Задачка показалась любопытной.
Подписаться на:
Сообщения (Atom)