В этом году Яндекс решил не дожидаться весны, и сходу обрушился на вебмастеров известиями о запуске нового мобильного алгоритма и результатах стартовавшего еще в декабре алгоритма по борьбе с кликджекингом. А про «буйства» прошлого года и вовсе страшно вспоминать. Чтобы помочь вебмастерам сосредоточиться на главном, редакция SEOnews собрала основные тренды продвижения в Яндексе и попросила экспертов дать советы, исходя из нововведений прошлого ­– начала этого года.

Ссылки

Прошедший 2015 год был по-настоящему годом ссылок. Точнее, он окончательно утвердил антиссылочную политику Яндекса. Запущенный в середине мая алгоритм показал даже самым скептически настроенным SEO-специалистам, что олдскульная закупка ссылок не просто не работает, но и ведет к печальным последствиям для сайта. А обновленный меньше чем через полгода АГС окончательно , что покупные ссылки убивают не только приобретающие их сайты, но и продающие.

Кейсы по выходу из-под «Минусинска» наглядно продемонстрировали, что избавиться от алгоритма несложно: главное – снять так называемые SEO-ссылки. Естественные и качественные ссылки в свою очередь только положительно сказываются на ранжировании, так что в новом году продолжаем прокачивать скилы по наращиванию естественной ссылочной массы.

Алексей Бузин, генеральный директор компании «СЕО-Импульс» :

Яндекс с введением в 2015 году алгоритма «Минусинск» заставил многих SEO-оптимизаторов переосмыслить свое отношение к покупке ссылок. До сих пор немалое количество сайтов находится в топ 10 по конкурентным тематикам с большим количеством откровенно покупных ссылок, но это не значит, что «Минусинск» их обошел стороной. Порог «спамности» ссылочного профиля постепенно повышается, поэтому мы рекомендуем тем владельцам сайтов, которые использовали получение ссылок через биржи, заняться тщательной чисткой ссылочного профиля либо обратиться за помощью к компетентным специалистам, которые помогут им сделать это.


Александр Дронов, старший менеджер отдела поискового продвижения компании i-Media :

Пора начать работать над стратегией получения естественных и качественных ссылок. Внешние факторы ранжирования никто не отменял. «Пингвин» и ручные санкции от Google, а также «Минусинск» и АГС от Яндекса дали понять: пора прекращать покупать абы какие ссылки с анкорами в виде ключевых запросов. Подобные ссылки по определению не могут быть естественными, и рано или поздно за них последует наказание в виде пессимизации сайта в выдаче.

Олег Сахно, руководитель отдела производственных услуг Cubo.ru :

Безопасность

Еще один важный момент, про который уже не первый год говорят в SEO-среде, это безопасность. В 2015 году Яндекс уделил довольно много внимания вопросу безопасного пользования интернетом (говоря о безопасности, Яндекс имеет в виду конфиденциальность и целостность пользовательских данных). Чего стоят одни его ухищрения в Я.Браузере вроде или появление о страницах, подписывающих пользователей на платные мобильные услуги.
Одним из первых крупных подтверждений серьезности намерений Яндекса стало проведение тестирования «безопасной выдачи». В течение ограниченного периода времени поисковик ниже ранжировал сайты, представляющие, по его мнению, опасность для пользователей, а в сниппетах таких ресурсов появлялось уже привычное «Сайт может угрожать безопасности вашего компьютера или мобильного устройства». Учитывая, что такая выдача пользователям понравилась больше, команда Яндекса в серьез сделать безопасность сайта одним из критериев ранжирования.


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

Еще раз взгляните на свой сайт и ответьте на несколько вопросов. Вызывает ли он у вас самих доверие? Не установили ли вы на нем какие-то подозрительные сервисы, которые в погоне за сиюминутной выгодой могут привести к долгосрочным негативным последствиям? Может ли пользователь доверить вам свои данные и можете ли вы гарантировать ему их безопасность? Мы не призываем всех повально переходить на HTTPS или устанавливать десятки степеней защиты. Просто отнеситесь с уважением к своим посетителям и помните, что небезопасные сайты теперь наказываются пессимизацией.

Александр Гайдуков, руководитель комплексной оптимизации сайтов в iSEO :

Безопасность (защищенные протоколы, «проверенные» CMS с минимальными рисками, отсутствие скрытых скриптов и фреймов для сбора данных и др.). Недавно мы столкнулись с фильтром Яндекса за кликджекинг, будьте внимательны.

Юзабилити

Пожалуй, это один из несменяемых трендов последних нескольких лет. Здесь сложно отметить, что-то новое, но и пропустить его нельзя. В 2016 году мы продолжаем делать сайты, которые будут удобными и понятными для пользователей. Сделать их такими помогут аналитика и A/B-тесты.

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


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

Александр Гайдуков, руководитель комплексной оптимизации сайтов в iSEO:

Работа с поведенческими факторами (оптимизация макетов страниц, регулярные исследования и сплит-тестирования для улучшения юзабилити, генерация нестандартных спецпроектов, например, под сезонные события, для сбора дополнительного лояльного трафика).

Тренд в юзабилити на 2016 год, несомненно – мобилопригодность. Поиск на мобильных устройствах, это уже половина от общего трафика. При этом надо знать меру и относиться с уважением к пользователям и их приватности. Собственно, поэтому и введены санкции за кликджекинг. По сути, все нововведения в юзабилити - это всё та же мантра: делайте сайты для людей.

Контент

Один из главных 2016 года – контент-маркетинг. И это неслучайно. Есть ощущение, что мы снова возвращаемся в эпоху Content is the king. Особенность работы с контентом на данном этапе заключается в его разнообразии. Сегодня контент сайта – это не просто полезные и интересные статьи с деликатно размещенными ключевыми словами, но и инфографики, рекомендации, видео и разного рода интерактивные форматы. И да, все это должно быть красиво оформлено и размещено так, чтобы пользователь мог легко найти интересующую его информацию.

Еще один важный момент – контент уже давно перестал быть «переносчиком ключевых слов». Теперь он решает конкретные задачи пользователя (и таким образом улучшает ваши поведенческие факторы).

К слову, Яндекс открыл для себя новый способ оценки качества контента: теперь для получения более подробных данных о страницах сайтов и просмотра контента в том виде, в котором он отображается в браузере, поисковик JavaScript и CSS.

Олег Сахно, руководитель отдела производственных услуг Cubo.ru:

Контент – это уже не просто внутренние факторы ранжирования, а серьезный упор на коммерческие факторы. Сейчас сайт должен не просто давать ответ, важно решать задачу пользователя. Если информационная потребность пользователя не удовлетворена, сайт не будет успешен в результатах поиска.

Mobile

В 2016 году Яндекс подхватил инициативу Google по развитию мобильного направления. Намеки о том, что flash-элементы попаданию видео в мобильный поиск в итоге переросли в полноценный алгоритм . Как и у Google, алгоритм Яндекса влияет только на мобильную выдачу: более адаптированные сайты получат там преимущество. Адаптивнность ресурса Яндекс определяет по двум критериям:

1. Нет горизонтальной прокрутки. Контент страницы адаптирован под размер экрана.

2. Отсутствуют элементы, которые не работают на популярных мобильных платформах (например, упомянутые выше flash-ролики).

Определить, как обстоят дела с этими критериями у вас на сайте, не составит труда. Для этого никаких mobile-friendly test’ов не нужно. Но даже если до сегодняшнего дня вы игнорировали идею о мобильном или адаптированном сайте и считали это «излишеством», которое вашему бизнесу ни к чему, подумайте о том, что мобильный трафик по всему миру уже обогнал десктопный. А терять в кризис драгоценных клиентов недопустимо. Так что посмотрите, что о разных вариантах «мобилопригодности» эксперты, и делайте свой выбор.

Алексей Бузин, генеральный директор компании «СЕО-Импульс»:

Как и Google, поисковая система Яндекс как бы намекает в своем новом кабинете вебмастера , в разделе «Диагностика сайта», о том, что необходимо сделать сайт mobile-friendly. Инструмент намекает оптимизаторам, что вскоре не будет мобильных и десктопных сайтов. Будут только новые и старые ресурсы.


Александр Дронов, старший менеджер отдела поискового продвижения компании i-Media:

Уделяйте особое внимание мобильной выдаче и тому, как в ней выглядит ваш сайт. Google с прошлого года хуже ранжирует в мобильном поиске сайты без адаптивной верстки или мобильной версии. А на днях Яндекс анонсировал запуск нового алгоритма «Владивосток», анализирующего сайт на «мобилопригодность» и учитывающего данный аспект при его ранжировании в мобильной выдаче. Ничего удивительного: доля мобильного трафика непрерывно растет, и поисковые системы не могут игнорировать данное обстоятельство. По нашим прогнозам, этот тренд будет набирать обороты. Поэтому начинайте анализировать мобильную выдачу и работать над своим местом в ней, а не концентрировать усилия исключительно на десктопной версии сайта и десктопной выдаче.

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

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

В итоге был создан довольно полезный PDF-отчет, который получил название «34 основных фактора ранжирования Яндекс и Google ». Данный отчет создавался в конце 2016 года, но все перечисленные факторы все также актуальны и в 2018 году, так как периодически обновляются. Особенно с учетом последних нововведений от поисковых систем. Не так давно было запущены новые алгоритмы: Баден-Баден от Яндекса и Google Fred .

Для тех, кто не любит что-то скачивать, выкладываю ниже полное содержание аналитического материала под названием: «34 основных фактора ранжирования Яндекс и Google в 2016-2017 году».

О ПОДБОРКЕ ФАКТОРОВ

Читать сотни факторов (которые учитывают поисковые системы) интересно, но не очень полезно в плане практического применения. Большинство существующих материалов на эту тему либо уже устарели, либо изначально не адаптированы под русскоязычный Интернет.

Мы проанализировали много публикаций и исследований различных факторов в авторитетных источниках (ссылки представлены ниже). Дополнительно сверили все эти утверждения с заявлениями ведущих разработчиков Google и Яндекс. В итоге получилась подборка наиболее важных факторов, которые учитывают современные поисковые системы Яндекс и Google.

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

Подумайте, пожалуйста, за нас. Уберите лишнюю «воду» и дайте нам более приближенную к жизни выборку» — такую просьбу высказал один из веб-мастеров.

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

По известным от разработчиков данным Яндекс учитывает более 800 факторов ранжирования, а Google (как минимум) 271 фактор .

Данные по Яндексу получены из интервью руководителя поисковых сервисов Яндекса Александра Садовского для www.sostav.ru , а также из других заявлений официальных лиц.

Данные по Google получены на основе исследования ресурса northcutt.com .

Дополнительно использовались материалы статьи Брайана Дина (Brian Dean, интернет-ресурс backlinko.com). В своей работе зарубежный SEO-специалист привел описание более 200 факторов, которые учитывает Google при построении поисковой выдачи.

Ниже представлен полезный аналитический материал, но он ни в коем случае не претендует на истину в последней инстанции.

Дополнительное пояснение:

Темным цветом представлен русский перевод и описание фактора с английского языка (информация была взята из материалов статьи Брайана Дина http://backlinko.com/google-ranking-factors).

Синим цветом дается расшифровка конкретного фактора. Вы сможете прочитать не только описание, которое адаптировано под современные реалии русскоязычного Интернета, но и получите ценные советы из 7-ми летнего практического опыта от SEO-специалиста Руслана Савченко.

ФАКТОР №1. ВОЗРАСТ ДОМЕНА

«Разница между шестимесячным доменом и годовалым на самом деле не так уж велика » – Мэт Каттс (Matt Cutts) руководитель отдела веб-спама и качества поиска Google.

Поисковые системы безусловно учитывают возраст домена… но это не очень важный фактор.

Руслан Савченко : На самом деле очень важно различать понятия «возраст домена» и «возраст сайта». Многие начинающие веб-мастера покупают давно зарегистрированные доменные имена, но сайты на этих доменах не развивались.

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

P.S. При покупке нового сайта (домена), обязательно проверьте его историю через сервис https://archive.org/web/ .

ФАКТОР №2. НАЛИЧИЕ КЛЮЧЕВЫХ СЛОВ В ДОМЕНЕ

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

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

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

ФАКТОР №3. ИСТОРИЯ ДОМЕНА

Домен с частой сменой собственника (через WHOIS) или при не своевременном продлении регистрации («дроп»), может заставить поисковые системы «обнулить» историю сайта, и перестать учитывать ссылки, указывающие на домен.

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

Стоит отметить: если вы резко поменяете содержимое сайта (не дизайн, а именно тематику и сам контент), то поисковые системы также обнулят доверие к вашему сайту. Возраст домена перестанет оказывать прежнее влияние.

ФАКТОР №4. ДОМЕН ТОЧНОГО СОВПАДЕНИЯ

Домены точного совпадения (EMD) все еще могут дать вам преимущество… если, конечно, у вас качественный сайт. Но когда на таком домене размещается низкокачественный сайт, он слабо защищен от EMD-алгоритма.

Для начала давайте расшифрую, что из себя представляет так называемый домен точного совпадения (EMD).

EMD-домен (Exact Match Domain) - если переводить дословно, то это домен с точным вхождением ключевых слов. Когда вы регистрируете доменное имя, которое состоит исключительно из популярной ключевой фразы, то это может вызвать подозрение у поисковых алгоритмов. В наибольшей зоне риска находятся домены:

  • со словами в названии «купить, скачать, бесплатно и т.п.».
  • если в названии домена присутствуют исключительно слова из популярной ключевой фразы, но отсутствует уникальное имя бренда и т.п..
  • Если домен состоит из 3-х и более ключевых слов, к примеру, «купить недвижимость в Краснодаре недорого». У Google разработан специальный EMD-алгоритм, который борется с так называемыми EMD-доменами.

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

Какой сайт, по вашему мнению, лучше отвечает на запрос «ремонт BMW». Сайт с доменным именем AvtoMir.com или сайт Remont.BMW-club.com? Уверен на 100%, что (без учета остальных факторов) предпочтение отдается именно 2-му варианту. Точно так же думают Google и Яндекс.

Кстати я не зря привел пример с поддоменом 3-го уровня Remont.BMW-club.com. Вариант с доменом 2-го уровня Remont-BMW.com был бы не самым оптимальным.

Представители поисковых систем отмечали, что с большим недоверием относятся к доменам 2-го уровня, которые состоят исключительно из ключевых слов. Именно такие домены рискуют получить наказание от алгоритма EMD. Это и не удивительно, ведь не так давно, как раз на таких доменных именах создавали бесполезные для людей сайты («дорвеи»).

Но если имя домена – это название вашей фирмы или бренда в сочетании с ключевым словом, то это удачный вариант и EMD ему не грозит.

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

Ведь даже если вы не боитесь алгоритма EMD, то ссылки, ведущие на ваш сайт, уже не смогут быть полностью безанкорными. А за это можно получить наказание уже от других алгоритмов и фильтров. К примеру, тот же Google Penguin и Минусинск от Яндекса, которые наказывают сайты за большое количество внешних ссылок с прямым вхождением ключевых слов в анкор.

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

ФАКТОР №5. ПРИСУТСТВИЕ КЛЮЧЕВОГО СЛОВА В ТЕГЕ «TITLE»

Тег title является вторым по важности SEO-параметром веб-страницы (после самого контента), и поэтому оказывает сильное влияние на ранжирование по конкретному поисковому запросу.

Не стоит забывать, что именно содержимое тега «title» Яндекс и Google показывают в поисковой выдаче.

Если объяснить работу поисковых систем максимально упрощенно, то ответ на запрос пользователя формируется исходя из ключевых слов, которые присутствуют в теге title, а также в тексте самой страницы. Это один из важнейших SEO-параметров.

Другое дело, что ни в коем случае нельзя перенасыщать текст и title страницы ключевыми словами. За это у современных поисковых систем существуют различные санкции: начиная от фильтра «уникализации заголовков», заканчивая алгоритмами, которые наказывают за переспам, избыточное содержание ключевых слов в тексте страницы и т.д.

ФАКТОР №6. ТЕГ «TITLE» НАЧИНАЕТСЯ С КЛЮЧЕВОГО СЛОВА

Важно понимать, что существует заголовок страницы (он находится в теге title), который пользователи видят в результатах поисковой выдачи.

Но есть ещё заголовок к тексту на странице (он находится в теге H1). Его пользователи видят уже после того как перешли на саму страницу сайта.

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

ФАКТОР №9. КЛЮЧЕВОЕ СЛОВО ЧАСТО УПОТРЕБЛЯЕТСЯ В ТЕКСТЕ ДОКУМЕНТА

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

Именно поэтому ещё несколько лет назад оптимизаторы создавали SEO-тексты с большим вхождением ключевых слов, выделяли их жирным и т.п. В современных условиях за большое количество ключевых слов в тексте можно быстрее получить «спам-фильтр», чем добиться каких-то бонусов к релевантности страницы.

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

ФАКТОР №10. ЛАТЕНТНО-СЕМАНТИЧЕСКИЙ ИНДЕКС КЛЮЧЕВЫХ СЛОВ В КОНТЕНТЕ (LSI)

Ключевые слова LSI помогают поисковым системам определять значения слов с болеe чем одним значением. Например, слово Apple — это компьютерная компания или фрукт. Наличие или отсутствие LSI также может выступать показателем качества контента на сайте.

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

Для начала приведу цитату, которую ни в коем случае не стоит пытаться понять неопытным людям. Если вы новичок, лучше сразу пропустите этот абзац. Но именно такие понятия даются, когда в некоторых авторитетных источниках подобные термины пытаются объяснить более «научным» языком: «LSI — это сингулярное разложение терм-документной матрицы, которое позволяет выловить ключевые составляющие этой матрицы и проигнорировать шумы. »

Прочитали? А теперь забудьте. Постараюсь дать более понятное объяснение:

LSI – это способ определения тематики и качества текста на основе анализа содержащихся в нем слов. Проще говоря, если в тексте встречаются слова «двигатель», «колесо», «руль» — то, скорее всего, текст про автомобиль.

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

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

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

Тексты, которые написаны с учетом требований LSI, крайне редко попадают под какие-то фильтры и намного легче поднимаются на высокие места в поиске. Особенно это актуально в тематиках с высокой конкуренцией.

P.S. Проанализируйте ваших конкурентов, которые находятся на первых местах в Google и Яндекс. Посмотрите на оформление их страниц, какие слова они используют в текстах и т.п. Это даст вам много пищи для размышлений, если ваш сайт ещё не находится в ТОПе.

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

ФАКТОР №11. КЛЮЧЕВЫЕ СЛОВА LSI В ТЕГАХ «TITLE» И «DESCRIPTION»

Как и в случае с контентом сайта, ключевые слова LSI в мета-тегах страницы помогают определить правильное значение слов-синонимов. Это также один факторов релевантности.

Исходя из контекста алгоритмы поисковых систем понимают к какой тематике относится слово с несколькими значениями. К примеру, на сайте появился заголовок: «Зажглась новая звезда эстрады». Если бы в заголовке не было слова «эстрады», то было бы непонятно к какой тематике относить этот фрагмент текста – к астрономии или к шоу-бизнесу.

Именно поэтому важно, чтобы в тегах «title» и «description» всегда были слова, которые четко определяют тематику страницы вашего сайта.

ФАКТОР №12. СКОРОСТЬ ЗАГРУЗКИ HTML-СТРАНИЦЫ И ТЕХНИЧЕСКИЕ ОШИБКИ НА САЙТЕ

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

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

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

Чаще всего недовольные посетители просто закрывают ваш сайт и уходят к вашим конкурентам. Соответственно у вашего сайта ухудшаются так называемые поведенческие факторы. А они уже напрямую влияют на ранжирование. Более того, существует показатель «отказов». В частности, когда пользователь провел на странице вашего сайта менее 15 секунд и вернулся обратно в поиск.

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

ФАКТОР №13. ПОВТОРЯЮЩИЙСЯ КОНТЕНТ (В ТОМ ЧИСЛЕ ДУБЛИ СТРАНИЦ)

Идентичный контент на одном сайте (даже слегка измененный) может отрицательным образом повлиять на видимость сайта в поисковых системах.

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

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

ФАКТОР №14. ОПТИМИЗАЦИЯ ИЗОБРАЖЕНИЙ

Изображения на страницах передают важную информацию о их релевантности. Поисковые системы определяют тематику картинок, анализируя название файла самой картинки, и текст, который находится в тегах: alt, title, description.

В идеале нужно заполнять все теги и делать подписи к картинкам. Особенно тег alt (альтернативный текст картинки). На его содержимое поисковые системы обращают внимание в первую очередь.

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

ФАКТОР №15. ЧАСТОТА И РАЗМЕР ОБНОВЛЕНИЙ КОНТЕНТА

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

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

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

ФАКТОР №16. ВИДИМОСТЬ КЛЮЧЕВОГО СЛОВА

Присутствие ключевого слова среди первых 100 слов контента страницы считается значимым сигналом релевантности.

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

ФАКТОР №17. КАЧЕСТВО И ТЕМАТИКА ИСХОДЯЩИХ ССЫЛОК

Более того, многие начинающие веб-мастера начитались уже устаревших мифов о том, что исходящие ссылки забирают ценный вес их сайта и поэтому добавляют ко всем исходящим ссылкам параметр rel=«nofollow». Тем самым они не только не сохраняют вес своих страниц, а просто отдают его в никуда.

Плюс ко всему такой подход наносит вред вашему сайту. Ведь rel=«nofollow» стоит ставить только в том случае, если вы ссылаетесь на нетематический ресурс.

Проводились эксперименты на различных сайтах. Так вот страницы, с которых стояли ссылки на качественные тематические материалы по теме, занимали более высокие места в поиске, чем страницы, с которых вообще не было исходящих ссылок.

Логика здесь простая. Даже невероятно авторитетная Wikipedia, у которой показатель ТИЦ 150 000 и огромное доверие от поисковых систем – всегда ссылается на источники и дополнительные материалы по теме. Вы скажете, так у них все исходящие ссылки закрыты параметром rel=«nofollow». Да, это так, но сделано это было для защиты от спамеров. Так как пока не были предприняты эти меры, многие веб-мастера и оптимизаторы пытались любой ценой получить ссылку с Википедии.

Но вывод простой. Если вы не являетесь известным экспертом в своей области и ваш интернет-ресурс не имеет большого доверия со стороны поисковых систем, то алгоритмы Яндекса и Google вряд ли поверят, что вы написали очень качественную статью, не использовав ни одного источника и ни разу никого не процитировав.

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

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

Есть и другие практические секреты, и нюансы по поводу исходящих ссылок, но нам уже пора переходить к следующему фактору.

ФАКТОР №18. ПОЛЕЗНЫЙ ВСПОМОГАТЕЛЬНЫЙ КОНТЕНТ

В соответствии с ныне общедоступным документом Google Rater Guidelines, полезный вспомогательный контент является показателем качества страницы (и, следовательно, дополнительным фактором ранжирования). К примерам можно отнести: процентные и кредитные калькуляторы, конвертеры валют, интерактивные рецепты и т.п.

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

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

ФАКТОР №19. МУЛЬТИМЕДИЙНЫЕ МАТЕРИАЛЫ НА САЙТЕ

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

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

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

ФАКТОР №20. КОЛИЧЕСТВО И КАЧЕСТВО ВНУТРЕННИХ ССЫЛОК, УКАЗЫВАЮЩИХ НА СТРАНИЦУ

Количество внутренних ссылок на страницу показывает ее важность относительно других страниц сайта.

Важно качество и количество ссылок на целевую страницу. Каждая страница вашего сайта имеет определенный «вес». Он может расти, если на эту страницу ведут внешние ссылки с других сайтов или имеются ссылки со страниц вашего сайта.

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

ФАКТОР №21. ДЛИНА URL-АДРЕСА

Search Engine Journal отмечает, что слишком длинные URL-адреса могут навредить релевантности страницы.

Такая тенденция есть. Желательно создавать короткие URL-адреса страниц. В идеале они должны состоять из 2-3 ключевых слов, написанных на транслите.

ФАКТОР №22. ЖИВЫЕ ЛЮДИ-АСЕССОРЫ

Хотя это не было подтверждено, Google подала патент на систему, которая позволяет людям-редакторам влиять на SERP (страницу результатов поиска).

Так называемые асессоры действительно присутствуют и у Яндекса, и у Google. Конечно, сайтов миллионы, и оценить всю поисковую выдачу вручную — нереально. Но самые высокие места (ТОП 10) поисковой выдачи в наиболее конкурентных тематиках оцениваются в том числе специальными асессорами.

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

ФАКТОР №23. ОПТИМИЗАЦИЯ САЙТА ПОД МОБИЛЬНЫЕ УСТРОЙСТВА

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

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

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

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

ФАКТОР №24. КОММЕРЧЕСКИЕ ФАКТОРЫ

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

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

ФАКТОР №25. ССЫЛКИ СО СТАРЫХ ДОМЕНОВ

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

ФАКТОР №26. КОЛИЧЕСТВО ССЫЛАЮЩИХСЯ ДОМЕНОВ

Количество ссылающихся доменов является одним из самых важных факторов ранжирования в алгоритме Google, в чем вы можете убедиться из графика Moz (горизонтальная ось – позиция в списке результатов поиска):

Мои личные наблюдения также подтверждают описанную выше информацию. Лучше иметь 10 обратных ссылок с 10-ти разных доменов, чем 20 ссылок, но с одного домена.

ФАКТОР №27. ССЫЛКИ С САЙТОВ-КОНКУРЕНТОВ

Здесь речь идет о следующем. К примеру, вы продвигаетесь по запросу: «купить автомобиль в Москве». Если бы вы получили ссылки с сайтов, которые стоят в ТОП 10 по этому же запросу, то это дало бы мощнейший эффект.

Но будем реалистами. В тематиках с высокой конкуренцией никто не захочет ставить ссылку на конкурента. Только если вы не гений угроз или дипломатии.

Хотя в моей практике бывали случаи, когда удавалось получить безанкорную ссылку (просто по URL-адресу) с сайта конкурента в ТОП 10. Но это больше исключение из правил.

При этом не обязательно пытаться получить ссылки с прямых конкурентов. Смотрите сайты за пределами ТОП 10. Более того, можно искать сайты по смежным запросам в этой же тематике.

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

ФАКТОР №28. ССЫЛКИ И УПОМИНАНИЕ САЙТА В СОЦИАЛЬНЫХ СЕТЯХ

Ссылки и упоминание названия вашего сайта в социальных сетях дают как прямой, так и косвенный эффект для продвижения. Кстати некоторые социальные сети лучше работают для Яндекса, а некоторые для Google. И речь идет далеко не только про Facebook, Twitter и Вконтакте.

Более того, существует подход, который позволяет не только повышать доверие к страницам вашего сайта (за счет ссылок из социальных сетей), но и дополнительно продвигать конкретные поисковые запросы.

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

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

ФАКТОР №29. КАЧЕСТВО КОНТЕНТА, КОТОРЫЙ ОКРУЖАЕТ ССЫЛКУ

Здесь все логично. Если страница-донор, с которой будет стоять ссылка на ваш сайт, имеет качественный и интересный контент, красивое оформление, полезные картинки, видео и т.п., то она может занимать более высокие места в поисковых системах. И такая страница будет иметь больше доверия со стороны Яндекса и Google. Соответственно, и с ссылки с такой страницы будут иметь больший вес и авторитет.

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

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

ФАКТОР №30. ПОКАЗАТЕЛЬ ОТКАЗОВ

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

«Отказом» считается, когда пользователь провел на конкретной странице сайта менее 15 секунд и ушел с обратно в поисковую выдачу. Этот фактор в сочетании с другими поведенческими данными позволяет поисковым системам дополнительно оценить качество определенных веб-страниц.

ФАКТОР №31. ПОВТОРНЫЕ ПОСЕЩЕНИЯ САЙТА

Поисковые системы также могут смотреть, возвращаются ли пользователи на сайт после первого посещения. Повторный трафик может повысить позиции сайта в списке результатов поиска.

Учитываются не только повторные посещения сайта, но и многие другие действия. К примеру, как часто пользователи сохраняют сайт у себя в закладках, переходят ли на сайт напрямую по URL-адресу, вводят ли название сайта в поиске, делятся ли ссылками на сайт и т.п.

ФАКТОР №32. КОЛИЧЕСТВО КОММЕНТАРИЕВ НА САЙТЕ

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

8 июня вебмастера заметили, что у сайтов изменился один из самых известных показателей – тематический Индекс Цитируемости (тИЦ) . Яндекс в блоге для вебмастеров подтвердил обоснованность наблюдений, опубликовав сообщение об изменениях в алгоритме расчета тИЦ.

Что касается непосредственно изменений, то тут Яндекс был как всегда краток и лаконичен. Понятно одно: что-то изменилось в алгоритме, но что именно – осталось загадкой.

Обновление показателя тИЦ отметили многие сервисы, анализирующие выдачу. Вот такое сообщение появилось на Tools.promosite.ru :

Интересные наблюдения с форумов о том, что тИЦ подрос на сайтах, где ничего не делалось уже достаточно длительный срок:

Также сообщается, что замечены существенные увеличения тИЦ для некоторых ресурсов СМИ и для Яндекс.Каталога:

Мы отметили изменение тИЦ для наших клиентов, проанализировав показатель для сайтов, работы с которыми были закончены в мае 2016 по услуге «Поисковое продвижение », тариф «Продвинутый».

Общее настроение после июньского апа в целом хорошее. Большинство сообщений на форумах о том, что тИЦ вырос. Это же подтверждают и наши наблюдения. По сравнению с апом в апреле, этот был более удачным. При нашей проверке тИЦ изменился у 77% сайтов. И в положительную сторону у 58%.

Скачок выше 10 пунктов был отмечен у 33% сайтов из всех ресурсов с положительной динамикой. Максимальный рост составил 390 пунктов.

Отрицательная динамика наблюдалась в 19% случаев, из них потеряли свыше 10 пунктов только 28% ресурсов. Максимальное падение составило 70 пунктов.

В среднем график изменения тИЦ после апрельского апдейта для сайтов выглядит следующим образом: сначала падение позиций в апреле, потом подъем после обновления в июне. Это же неоднократно отмечалось и в Сети.

Для большинства ресурсов с положительной динамикой мы получили подобные графики изменений в позициях по тИЦ:

Если у вас коммерческий сайт, и вы не занимаетесь продажей ссылок, то, скорее всего, рост или падение тИЦ не играет для вас никакого значения.

Конечно, приятно, что показатель, о котором пишет чуть ли не весь Интернет, у вашего сайта вырос. Но если вы не понимаете, какая от этого польза, и при его изменении с сайтом решительно ничего не происходит, скажем, не меняется количество людей на сайте, позиции в поиске, процент конверсии, размер выручки и т.д., то можно особо и не заострять внимание на колебаниях этого индекса. Вот Google вообще недавно отменил обновление своей пузомерки (PR). Теперь никто не знает, сколько она составляет, насколько упала или выросла, а занимаются продвижением ресурсов.

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

Мы выпустили новую книгу «Контент-маркетинг в социальных сетях: Как засесть в голову подписчиков и влюбить их в свой бренд».

Писал недавно аналогичную статью про и решил, что осветить прошлое отечественного поисковика тоже необходимо для полноты картины. Рамблер не предлагать:)

Изначально с 1990 года по 1996 компания под необычным названием «Аркадия» занималась разработкой программных продуктов, тесно связанных с поиском по словам. Первым шагом на пути к созданию поисковой системы, такой, какой мы её знаем сейчас, было создание автоматического классификатора изобретений, весом 10 мб. Благодаря полученным в Аркадии наработкам – старт Яндекса был впечатляющим.

Далекое прошлое: все алгоритмы Яндекса с 1997 года

  • 23 сентября 1997 год – Официальный день рождения компании «Яндекс». Со старта поисковик уже мог учитывать морфологию, расстояние между словами и оценивать релевантность документа к введенному запросу.
  • Ноябрь 1997 года – Пользователи могут получать релевантные ответы на естественно-языковые запросы. Типа «где купить», «куда сходить» и так далее.
  • 1998 год – Яндекс добавил возможность «найти похожий документ» по времени изменения и в диапазоне дат.
  • 1999 год – Становится возможен поиск по разным категориям: зоны текста, категории, изображения. В этот же год добавили понятие «индекс цитирования». В поиске появляется фильтр, нацеленный на избежание порнографии и мата.
  • 2000 год – Яндекс охватывает новые области. В частности «Яндекс.Новости». Теперь тексты ранжируются по степени важности.
  • 2001 год – Объем данных в индексе поисковика превысил 1 терабайт.
  • 2002 год – SEO начинает активно возвышать сайты в поиске. Два основных способа: обмен ссылками и размещение ссылок в каталогах.
  • 2003 год – Популярность обмена ссылками зашкаливает. Появляются автоматические сервисы для обмена бэками. Тенденция сохраняется весь 2004 год.
  • Начало 2005 года – Продвижение с помощью линкаторов (сервисов для автоматической накрутки ссылок) переступает все пределы. В топе результатов поиска появляются абсолютно не релевантные страницы.

    Продвинуть можно было любой сайт по любому запросу без особых трудностей – начали появляться различные приколы. В то время по запросу «враг народа» можно была найти сайт президента РФ Владимира Владимировича. А запрос геморрой показывал русскоязычную версию сайта Microsoft.

  • Конец 2005 года – Логично предположить, «Яндекс» начал истреблять линкаторы. Так называемый «Непот-фильтр» аннулировал вес ссылок с сайтов, занимающихся линко-торговлей.
  • 2006 год – На смену обмену ссылками пришли биржи, на которых можно было приобрести бэклинк с разных площадок (типа досок объявлений).
  • 2007 год – Ссылки стали товаром. И было предсказуемо создание крупной биржи для покупки/продажи ссылок в различных режимах, на разных ресурсах и тд. В те годы, подобный бизнес мог приносить очень неплохой ежемесячный доход. А значит, и заниматься этим стали все подряд. Основной работой в SEO стала покупка бэклинков. В этот же год вышла новая формула ранжирования, по которой по высокочастотным, однословным запросам в ТОП выходили в основном главные страницы сайтов.

Время перемен в Яндекс: история обновлений с 2007 по 2009

  • 20 декабря 2007 года – Обновление алгоритма ранжирования. Первые попытки борьбы со спамом. Из результатов поиска исключаются ресурсы, которые сильно злоупотребляли наращиванием ссылочного профиля.
  • 17 января 2008 года – «8 SP1». Первый алгоритм «Яндекса», который удостоился собственного имени, хоть и не очень понятного. С этого момента верхушку поиска занимают старые, авторитетные сайты. Появляется понятие «трастранк», степень доверия к сайту. Кстати, теперь «Яндекс» обещает называть все свои алгоритмы названием городов.
  • 19 марта 2008 года – Фильтрация, нацеленная на борьбу с покупными ссылками, ужесточается. Большинство сайтов, которые покупали бэклинки, проседают в позициях. Но, ко всеобщему удивлению, от принятых мер поисковая выдача стала только хуже, поэтому все вернулось на свои места.
  • 16 мая 2008 года – «Магадан». Поисковик научился читать транслитерацию, переводы и аббревиатуры. Стал доступен поиск по зарубежным сайтам. Смягчилась фильтрация отбора документов. Вдвое увеличилось количество факторов ранжирования. Почти сразу вышел «Магадан 2.0». Добавлены новые факторы, которые учли уникальность контента и стали классифицировать запросы на коммерческие/некоммерческие и геозависимые/геоНЕзависимые.
  • 12 сентября 2008 года – «Находка». Повысился вес внутренних страниц. Теперь по среднечастотным и по некоторым высокочастотным запросам можно встретить в поиске не только главные страницы. Усиливается борьба с клоакингами (сайты, созданные для манипулирования трафиком. Черный SEO метод). Расширен словарь связей.
  • 10 апреля 2009 года – «Арзамас». Улучшается распознавание опечаток в запросах. Выдача становится . Теперь поисковик учитывает регион пользователя. Появился термин «региональное продвижение». Выявлено 19 основных регионов.
  • 28 сентября 2009 года. Фильтр 17. По словам Яндекса, фильтр работает с 2006 года. Но ранее его присутствие было не столь ярко выражено. Фильтр нацелен на борьбу с некачественными сайтами, например, созданными и заполненными автоматически.
  • 10 ноября 2009 года –«Снежинск». Теперь по высокочастотным однословным запросам лидерами поиска стали информационные сайты, вытеснив коммерческие. Официальное рождение «Матрикснет», нового метода машинного обучения. Теперь все запросы, характеризующие сайты, стали связаны между собой. Первые слухи о поведенческих факторах.

    SEO становится все сложнее.

  • 18 декабря 2009 года – АГС 30. Теперь фильтр стал умнее. Он начал исключать из индекса не только неуникальные сайты, но и ресурсы, не несущие никакой пользы.
  • 22 декабря 2009 года – «Конаково». В поддержку Арзамасу число регионов увеличилось с 19 до 1250.

Изменение алгоритмов Яндекса: наши дни

  • 20 января 2010 года – Анти-портянки. Яндекс ввел фильтр за огромные тексты, перенасыщенные ключевыми словами.
  • 6 августа 2010 года – «Обнинск». Была расширена формула ранжирования, что в первую очередь повлияло на геонезависимые запросы. Алгоритм также негативно повлиял на продвижение некачественными ссылками. Еще в 2010 году подтвердились слухи о поведенческих факторах.
  • 15 декабря 2010 года – «Краснодар». Два крупных нововведения. Первым стала технология «Спектр», которая отвечала на неоднозначные запросы пользователя, разбавляя выдачу разными ответами. Классический пример неоднозначного запроса “Наполеон” – что хотел пользователь? Торт? Полководец? Музыкальная группа? Так вот спектр был создан, чтобы удовлетворить все возможные потребности по неоднозначным запросам. Вторым нововведением стала индексация соц. сети “ВКонтакте”. Теперь можно через поисковую строку можно найти профили пользователей из соцсети.
  • Май 2011 года – Многие сайты потеряли позиции из-за волны ручной пессимизации за накрутку поведенческих факторов.
  • 17 августа 2011 года – «Рейкьявик». Усовершенствование персонализации. Добавление « », теперь, вводя в поисковую строку какую-либо формулу, пользователь сразу получал ответ.
  • 13 сентября 2011 года – «Ты спамный». Фильтр за переспамленный текст. Понижались тексты, которые имели низкий показатель поведенческих факторов.
  • 12 декабря 2012 год –«Калининград». Главная идея сделать полностью персональный поиск. Теперь пользователю предлагались подсказки, основанные на его предыдущей истории. Помимо Калининграда в течение года улучшился поиск по контенту в соцсетях. По неоднозначным запросам появились подсказки, чтобы уточнить, чего хотел пользователь. Немного позже подсказки стали учитывать предыдущие запросы пользователя. В сниппеты стали добавлять профили в социальных сетях. Яндекс начал сотрудничать с Твиттером. После того как открыл Яндексу свою базу данных, скорость индексации сайта с регулярными твиттами заметно улучшилась. Еще понизились сайты с pop-up элементами, которые маскировались под системные сообщения и сигналы социальных сетей.
  • Февраль 2013 года – Яндекс начал отмечать сайты, зараженные вирусами или содержащие вредоносный код.
  • 13 мая 2013 года – К адресу в сниппете сайтов добавили ближайшую станцию метро и время работы организации.
  • 16 мая 2013 года – Платформа «Острова». Принципиальное изменение формата поисковика. Яндекс планировал сделать так, чтобы пользователь мог решать свои проблемы не заходя на конкретный сайт, а сразу в поисковике. Например, заказать/купить/вызвать и так далее. Почему-то дата релиза все время откладывалась.
  • 6 ноября 2013 года – АГС 40. Очередное ужесточение АГС фильтра. Отныне фильтр полностью автоматический.
  • 2014 год. Отныне АГС фильтр не выкидывал страницы из индекса, а обнулял тИЦ. Активная борьба со ссылками. Анонс безссылочной формулы ранжирования для ряда коммерческих тематик в Москве. Очередная волна пессимизации за накрутку ПФ. Волна пессимизации за агрессивную рекламу.
  • 15 апреля 2015 года – Анонс «Минусинск». На «Неделе байнета» Яндекс анонсировал новый алгоритм, направленный на борьбу со ссылочным спамом. На удивление, перед тем как применить санкции к сайтам, Яндекс разослал предупреждения, что весьма несвойственно поисковику.
  • 15 мая – 23 июня 2015 года. За этот короткий промежуток времени прошло три волны, понижающих сайты за ссылочный спам.

Новые алгоритмы поиска Яндекса

2 февраля 2016 года – «Владивосток». Яндекс запустил новый алгоритм, оценивающий «мобилопригодность». Теперь в мобильной выдаче одним из значимых факторов ранжирования является адаптированность сайта под мобильные устройства.

Продолжение следует

Как бы ни усложняли жизнь SEO специалистам, все мы пользуемся поиском. И за последние годы поисковая выдача сильно преобразилась. Причем в лучшую сторону. Надеюсь, Яндекс и дальше будет выдумывать оригинальные способы, ограничивающие возможности воздействовать на результаты поиска. Так работать только интересней.

29 июля в Минске прошёл финальный раунд чемпионата по программированию Яндекс.Алгоритм . Победителем стал Егор Куликов - выпускник мехмата МГУ и бывший сотрудник Яндекса. Второе место - у Николы Йокича из Швейцарской высшей технической школы Цюриха. В составе команды школы он был финалистом ACM ICPC. Третье место занял Макото Соэдзима , выпускник Университета Токио. Геннадий Короткевич , победитель двух предыдущих Алгоритмов, занял шестое место.


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



В этом году мы получили на четверть больше заявок на участие в Алгоритме, чем год назад, - 4578. Среди участников пока немного девушек - 372. В списке зарегистрировавшихся есть представители 70 стран; больше всего соревнующихся - из России, Индии, Украины, Беларуси, Казахстана, США и Китая. В финале приняли участие 25 человек.


Задачи для Яндекс.Алгоритма составляют сотрудники Яндекса и приглашённые эксперты, среди которых - финалисты и призёры ACM ICPC. По условиям состязания, участники могут использовать разные языки программирования. Статистика Яндекс.Алгоритма показывает, что самый популярный язык - С++; его выбрали более двух тысяч человек. Второе место поделили Python и Java.

Задача A. Место проведения финала



В этом году финал Яндекс.Алгоритма проходит в Национальной библиотеке Беларуси. Хочется отметить, что здание библиотеки имеет весьма необычную форму - ромбокубоктаэдр.


Ромбокубооктаэдр это полуправильный многогранник, гранями которого являются 18 квадратов и 8 треугольников. Всего у ромбокубооктаэдра 24 вершины и 48 ребер. Изображение ромбокубооктаэдра представлено ниже:




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


Так как ответ может достаточно большим, вычислите его по модулю 10 9 + 7.

Формат входных данных

В единственной строке входных данных записано одно целое число k (1 ⩽ k ⩽ 50), количество цветов в вашем распоряжении.

Формат выходных данных

В единственной строке выведите ответ на задачу.

Примеры

стандартный ввод стандартный вывод
1 0
3 356928

Замечание

Одним из вариантов корректной раскраски для k = 3 будет покрасить все треугольные грани в первый цвет (8 граней), все квадратные грани, смежные по ребру с одной из треугольных граней, во второй цвет (12 граней), и все оставшиеся квадратные грани в третий цвет (6 граней).

Разбор задачи A

Рассмотрим новый граф, вершинами которого являются грани ромбокубооктаэдра, а рёбрами соединены те вершины, которые соответствуют граням, смежным по стороне (так называемый двойственный граф многогранника). Наша задача принимает следующий вид: нужно посчитать количество правильных раскрасок получившегося графа в k цветов, где правильная раскраска - это такая раскраска, что соседние вершины окрашены в разные цвета.


Заметим, что наш граф является двудольным: его вершины можно разбить на две группы, состоящие из 12 вершин и из 14 вершин, таким образом, что рёбра соединяют только вершины разных групп. На самом деле, в условии даже указано, как именно устроено это разбиение: первую долю разбиения образуют вершины, которые в пояснении предлагается покрасить во второй цвет, а вторую долю - все остальные.


Будем сначала красить первую долю, а только потом вторую. Заметим, что при фиксированной раскраске первой доли посчитать количество способов, которыми можно докрасить вторую долю, не составляет труда: каждую вершину второй доли мы красим в отдельности, а значит, общее число способов есть произведение по всем вершинам второй доли v величины k − adj(v), где adj(v) - количество различных цветов среди вершин, смежных v.


Теперь надо каким-то образом перебрать раскраску первой доли. Если явно перебирать цвет для каждой вершины, это потребует порядка 50 12 ≈ 2,4 · 10 20 операций, что не уложится ни в какие разумные временные рамки. Будем перебирать не сами цвета вершин, а только их разбиение на одинаковые/разные цветовые группы. А именно - для каждой очередной вершины в ходе перебора будем принимать решение, отнести ли её к одному из уже имеющихся цветов вершин, либо завести ли для неё новый. Таких «сжатых» раскрасок уже не так много, всего 4 213 597 штук. Очевидно, информации, содержащейся в сжатой раскраске первой доли, достаточно для того, чтобы понять, сколькими способами можно докрасить вторую долю, надо только не забыть умножить это число на количество способов превратить данную сжатую раскраску в полноценную раскраску (оно равняется A(k, c) = k(k − 1)(k − 2)...(k − c + 1), где c - количество использованных в сжатой раскраске цветов).


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


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

Задача B. Преобразование последовательности



Вам дана последовательность a 1 , a 2 ,..., a n , исходно состоящая из n нулей. За один ход вы можете выбрать любой её подотрезок a l , a l+1 ,...,a r , а также произвольное целое число x и преобразовать последовательность этот подотрезок, заменив a l+k на a l+k + (−1) k · x для всех целых 0 ⩽ k ⩽ r − l.


Требуется преобразовать исходную нулевую последовательность в данную последовательность b 1 , b 2 ,..., b n за минимальное число ходов. Имеется важное ограничение на последовательность b i: гарантируется, что все её элементы принадлежат множеству {−1, 0, 1}.

Формат входных данных

В первой строке входных данных находится единственное целое число n (1 ⩽ n ⩽ 10 5). Вторая строка содержит n целых чисел b 1 , b 2 ,..., b n (−1 ⩽ b i ⩽ 1).

Формат выходных данных

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

Примеры

стандартный ввод стандартный вывод
2
-1 1
1
5
1 -1 1 1 0
2

Замечание

В первом тесте из условия можно получить требуемую последовательность за один ход, в котором x = −1, l = 1 и r = 2.


Во втором тесте из условия можно действовать следующим образом:
0 0 0 0 0 → 2 -2 2 0 0 → 1 -1 1 1 0

Разбор задачи B

Будем постепенно разбираться в конструкции. Во-первых, инвертируем знаки у всех чисел, стоящих на чётных позициях. Теперь операция, указанная в условии, будет действовать проще: нам разрешается выбрать любой подотрезок и прибавить ко всем числам на нём одно и то же число t.


Раз мы имеем дело с операциями вида «прибавить на подотрезке одно и то же число», то полезно перейти к последовательности, состоящей из разностей соседних элементов: перейдём от a 1 , a 2 ,...,a n к последовательности b 0 = a 1 , b 1 = a 2 − a 1 ,..., b i = a i+1 − a i ,..., b n = −a n . В этой последовательности элементов на один больше, и она удовлетворяет специальному условию, что b 0 + b 1 +… + b n = 0.


Тогда прибавление константы x на отрезке исходной последовательности эквивалентно замене b l−1 → b l−1 + x и b r → b r − x.


В последовательности a i встречались целые числа от −1 до 1, поэтому в последовательности b i будут встречаться целые числа от −2 до 2. За один ход, как мы уже выяснили, мы можем к одному из чисел прибавить x, а из другого вычесть x, и мы хотим добиться, чтобы в последовательности были одни нули.


Назовём «весом» операции прибавления x и −x к двум элементам последовательности величину |x|.


Докажем вспомогательный факт: если число b i больше (меньше) нуля, то не выгодно применять операции, в которых число b i увеличивается. Формально говоря, если есть оптимальная (т. е. кратчайшая) последовательность операций, в которой какое-то b i в какой-то момент увеличивается, то можно предъявить последовательность операций, в которой ни одно b i никогда не увеличивается, и которая имеет ту же длину.


Действительно, пусть к b i применялись две операции, скажем, 1) b i → b i + x, b j → b j − x и 2) b i + x → b i + x − y, b k → b k +y, и, для определённости, где x,y > 0 и, для определённости, x ⩽ y.


Давайте заменим эти две операции на две других: 1) b i → b i − (y − x) = b i + x − y, b k → b k + y − x и b j → b j − x, b k + y − x → b k + y − x + x = b k + y. Это две эквивалентные операции, они приводят к тем же результатам, но можно увидеть, что суммарный вес двух новых операций уменьшился: |y − x| + |x| = y − x + x = y < x + y = |x| + |y|.


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


Это позволяет описать все доступные нам операции. Мы можем либо избавиться от −2 и 2 за один ход, либо избавиться от −1 и 1 за один ход, либо избавиться от −2, 1, 1 за два хода, либо избавиться от 2, −1, −1 за два хода.


Понятно, что суммарный вес всех операций, которые мы произведём, есть сумма всех положительных чисел среди b i (которая противоположна по знаку сумме всех отрицательных чисел). У нас теперь бывают операции веса 1 и веса 2, и понятно, что чтобы минимизировать общее число операций, надо сделать как можно больше операций веса 2. Это приводит нас к жадному алгоритму, а именно - сокращать двойки с минус двойками, пока можем, а когда не больше не можем, сокращать единички и минус единички с чем получится.


Таким образом, ответ это сумма всех положительных b i минус минимум из количества двоек и количества минус двоек.

Задача C. Игра в шляпу



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


Рассмотрим следующую задачу. За круглым столом сидят 2n людей. Они хотят поиграть в шляпу, и они уже разбились некоторым образом на команды по двое. Теперь они хотят пересесть таким образом, чтобы каждый человек сидел напротив своего партнёра. Для этого они могут несколько раз произвести следующую операцию: они выбирают двух людей из сидящих за столом и просят их поменяться местами.


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

Формат входных данных

В первой строке входных данных находится целое число n (1 ⩽ n ⩽ 10 5), означающее, что за столом сидят 2n человек.


Во второй строке находится последовательность из 2n целых чисел. Каждое целое число от 1 до n встречается в этой последовательности ровно два раза. Эта последовательность описывает разбиение людей, сидящих вокруг стола, на команды, если мы будем их выписывать в порядке обхода по часовой стрелке.

Формат выходных данных

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

Примеры

стандартный ввод стандартный вывод
3
2 1 3 2 1 3
0
4
2 1 4 2 3 1 3 4
2

Замечание

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


Во втором тесте из условия один из оптимальных способов будет сначала поменять местами людей, сидящих на первой и седьмой позициях, а потом поменять местами людей, сидящих на седьмой и восьмой позициях, что приведёт нас к корректной рассадке: 3 1 4 2 3 1 4 2.

Разбор задачи C

Рассмотрим следующий граф: его вершинами будут 2n позиций за столом, а рёбрами будут соединены, во-первых, вершины, соответствующие диаметрально противоположным позициям, а во-вторых - вершины, соответствующие позициям, на которых сидят люди из одной команды. В частности, если люди из одной команды уже сидят друг напротив друга, то между вершинами, соответствующими их позициям, будет проведено два ребра.


Получившийся граф обладает тем свойством, что в нём из каждой вершины ведёт ровно два ребра (одно - диаметр, а второе - в вершину, в которой сидит человек из той же команды). Такой граф всегда представляет из себя объединение из какого-то количества циклов.


Мы стремимся достигнуть ситуации, когда каждый цикл состоит ровно из двух диаметрально противоположных вершин, то есть когда всего имеется ровно n циклов длины 2.


Поймём, как меняется наш граф под воздействием доступной нам операции. Пусть поменяли местами двух людей не из одной команды (иначе это бессмысленная операция), скажем, человека из вершины a с человеком из вершины b. Пусть партнёр человека a сидит в вершине a′, а партнёр человека b сидит в вершине b′. Тогда из графа пропадут два ребра aa′ и bb′ и образуются два новых ребра ba′ и ab′ (то есть новые рёбра будут идти крест-накрест между концами старых). Легко видеть, что такая операция может либо один цикл разъединить на два, либо не изменить количество циклов, либо склеить два цикла. Значит, ответ никак не меньше, чем n − c, где c - исходное количество циклов. С другой стороны, всегда можно добиться требуемого ровно за столько ходов: достаточно на каждом шаге брать пару сокомандников, которые сидят не друг напротив друга, и просто пересаживать одного из них так, чтобы он сел напротив своего партнёра. Эта операция строго увеличивает количество циклов на один.


Таким образом, ответ есть n − c, где c - количество циклов, или, что то же самое, компонент связности в указанном графе. Эту задачу можно решить и просто явно моделируя процесс рассаживания людей по парам, и это корректно по тем же причинам, которые описаны выше.

Задача D. Кучефицируй меня полностью



Вы - простой паренёк, который хочет лишь одного: чтобы ему на день рождения подарили двоичную максимальную кучу, потому что у всех ваших друзей уже такая есть! Наконец, вы пошли с родителями в магазин, но, к сожалению, там закончились все двоичные кучи, и всё, что осталось - это старое полное двоичное дерево. Оно состоит из n = 2 h − 1 вершин, в которых записаны некоторые значения, не обязательно удовлетворяющие главному свойству максимальной кучи. К счастью, Старый Джо согласился помочь вам превратить это дерево в двоичную кучу за определённую плату.


Полное двоичное дерево высоты h это корневое дерево, состоящее из n = 2 h − 1 вершин, пронумерованных от 1 до n, такое, что для любого 1 ⩽ v ⩽ 2 h-1 − 1 вершина v является предком для вершин 2v и 2v + 1.


Двоичная максимальная куча высоты h это полное бинарное дерево высоты h, у которого в вершинах находятся значения h 1 , h 2 ,..., h n , при этом значение в любой вершине не меньше, чем значение в её детях (если у неё есть дети).


Вам дано полное бинарное дерево высоты h, в вершинах которого находятся значения a 1 ,a 2 ,...,a n . Также, с каждой вершиной связана стоимость c v , означающая, что Старый Джо может как увеличить, так и уменьшить значение в вершине v на произвольную величину x > 0 за стоимость в c v x. Вы можете менять значения в произвольном количестве вершин.


Определите минимальную стоимость преобразования данного полного бинарного дерева в максимальную кучу.

Формат входных данных

В первой строке ввода находится единственное целое число n (1 ⩽ n ⩽ 2 18 −1), количество вершин в полном бинарном дереве, которое вам досталось. Гарантируется, что n = 2 h − 1 для некоторого целого h.


Во второй строке ввода находятся n целых чисел a 1 , a 2 ,..., a n (0 ⩽ a i ⩽ 10 6), текущие значения вершин дерева.


В третьей строке находятся n целых чисел c 1 , c 2 ,..., c n (0 ⩽ c i ⩽ 10 6), стоимости изменения значений в вершинах дерева.

Формат выходных данных

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

Пример

стандартный ввод стандартный вывод
7
4 5 3 1 2 6 6
4 7 8 0 10 2 3
19

Замечание

В тесте из условия оптимальным способом будет увеличить значение в вершине 1 на 2 ценой в 4 · 2 = 8 и уменьшить значения в вершинах 6 и 7 на 3 ценой в 2 · 3 = 6 и 3 · 3 = 9 соответственно. Таким образом, общая стоимость будет равна 8 + 6 + 9 = 23.

Разбор задачи D

Введём обозначения. Пусть L v (x) - это минимальная цена, которую надо заплатить, чтобы поддерево вершины v стало корректной кучей, а в самой вершине v стояло число, не превосходящее x. Пусть S v (x) - это величина, которая определяется абсолютно аналогично, только в самой вершине v должно стоять строго число x. Тогда ответ на задачу равняется значению минимума функции S v (x).


Для листовых вершин v по условию имеем, что S v (x) = c v |x − a v |. Аналогично можно понять, что L v (x) = max{0, c v (a v − x)}.


Выразим S v (x) через L 2v (x) и L 2v+1 (x) (то есть функцию S вершины v через функции L её детей). Верно следующее соотношение:


S v (x) = c v |x − a v | + L 2v (x) + L 2v+1 (x).


Действительно, если в вершину v мы ставим значение x, то мы платим, во-первых, за изменение самой вершины v, и во-вторых, мы должны поменять поддеревья v каким-то образом, чтобы значение в v оказалось не меньше значений в её детях, а эту стоимость мы можем получить из функции L для детей.


L v (x) мы сейчас научимся считать по S v (x). Но давайте в этом месте остановимся и выскажем предположение, какой вид имеют функции L v и S v . Можно догадаться, что они будут кусочно-линейными функциями переменной x, но на самом деле верно даже более сильное условие: они будут выпуклыми кусочно-линейными функциями (другими словами, угол наклона каждого следующего звена возрастает). Давайте строго это докажем: пусть это верно для вершин 2v и 2v + 1. Тогда S v (x), как следует из формулы выше, тоже выпуклая кусочно-линейная функция (так как является суммой трёх выпуклых кусочно-линейных функций).


Теперь уже L v (x) легко получить по S v (x): рассмотрим точку глобального минимума S v (x). До этой точки S v (x) убывает, а после неё возрастает. Для того, чтобы получить L v (x), надо просто заменить участок возрастания S v (x) на константный горизонтальный участок со значением, равным глобальному минимуму функции S v (x).


Заметим, что для того, чтобы задать функции L v и S v , нужно O(size(v)) информации о точках излома этих функций, где size(v) - это размер поддерева вершины v. Действительно, точек излома в графике функции S v (x) не больше, чем суммарно точек излома в графиках функций S 2v и S 2v+1 плюс ещё одна точка излома из-за слагаемого c v |x − a v |. Получается рекуррента T(v) = T(2v) + T(2v + 1) + 1 на количество хранимой в худшем случае информации, решением которой является T(v) = size(v).


Непосредственно реализовать основную формулу, используемую в задаче, можно за линейную сложность от размеров сливаемых функций. Таким образом получается решение за size(v) = nk = n · log 2 n.

Задача E. Отделяй и властвуй



Последовательность чисел называется хорошей , если ее можно построить согласно следующим правилам:

  • пустая последовательность является хорошей;
  • если X и Y - хорошие последовательности, то XY (конкатенация X и Y) также является
    хорошей;
  • если X - хорошая последовательность, а n - любое число, то nXn (число n, потом все элементы X, и, наконец, опять число n) также является хорошей последовательностью.

Например, последовательность (1, 2, 2, 1, 3, 3) является хорошей, а последовательность (1, 2, 1, 2) - нет.


Последовательность называется разделимой, если существует способ разбить ее на две хорошие подпоследовательности (любая из них может быть пустой). Например, последовательность (1, 2, 1, 2) является разделимой (поскольку ее можно разбить на хорошие подпоследовательности (1, 1) и (2, 2)), а последовательность (1, 2, 3, 1, 2, 3) - нет.


Рассмотрим все последовательности из 2n чисел, такие что каждое число от 1 до n встречается ровно дважды. Сколько из них являются разделимыми? Найдите ответ по модулю 10 9 + 7.

Формат входных данных

В единственной строке ввода записано одно целое число n (1 ⩽ n ⩽ 500).

Формат выходных данных

Выведите одно целое число - ответ на задачу по модулю 10 9 + 7.

Примеры

стандартный ввод стандартный вывод
1 1
2 6
4 2016

Разбор задачи E

Как проверить, является ли последовательность отделимой? Для данной последовательности построим граф на n вершинах. Вершины i и j соединим ребром, если пары соответствующих чисел нельзя включить в одну ПСП (т. е., например, когда числа расположены как (i, j, i, j) либо (j, i, j, i), но не (i, i, j, j) или (i, j, j, i)). Последовательность отделима тогда и только тогда, когда получившийся граф двудолен.


Обозначим за f(n) количество отделимой последовательностей из n пар чисел, при этом последовательности, отличающиеся перенумеровкой чисел, мы будем считать одинаковыми. Введем вспомогательную функцию g(n) - количество примитивных последовательностей, т. е. отделимой последовательностей из n пар чисел, для которых существуют ровно один способ разделения на две ПСП (это в точности те же последовательности, для которых граф, описанный выше, связен).


Пусть мы знаем значения g(n), вычислим теперь f(n). Для произвольной отделимой последовательности рассмотрим компоненту связности, содержащую первое число. Пусть она содержит k пар чисел, тогда между ее элементами есть 2k промежутков, в каждый из которых можно поставить любую отделимой последовательность независимо друг от друга. Обозначим F (n, k) количество способов выбрать k отделимых последовательностей суммарной длины 2n. Тогда из рассуждений выше получаем f(n) = g(k) F(n − k, 2k). Величины F(n, k) тривиально пересчитываются друг через друга и очередные значения f(n).


Как найти g(n)? Назовем конфигурацией спобов разбить 2n элементов на два множества и построить ПСП на каждом из них независимо. Количество конфигураций на 2n элементах t(n) вычисляется тривиально. Вычтем из этого количества все конфигурации, не относящиеся к примитивным последовательностям, оставшееся количество будет равно 2g(n). Снова рассмотрим компоненту связности, содержащую первое число, пусть в ней k пар чисел. Количество таких конфигураций равно 2g(k) T(n − k, 2k), где T (n, k) - количество способов выбрать k конфигураций с суммарным количеством элементов 2n. Таким образом, g(n) = (T(n) − g(k) T(n − k, 2k). Величины T(n, k) вычисляются тривиально через t(n), которые находятся явно. Суммарная сложность этого решения O(n 3).

Задача F. Дроби



Задана последовательность a 1 , a 2 ,..., a n , элементы a i которой являются дробями, записанными в виде p/q, где p - целое, а q - целое положительное (при этом их взаимная простота не гарантируется).
Проверьте, что для каждой пары i,j (1 ⩽ i < j ⩽ n) существует как минимум одно 1 ⩽ k ⩽ n такое, что a i · a j =a k .

Формат входных данных

Первая строка входных данных содержит одно целое число n (1 ⩽ n ⩽ 3 · 10 5) - длину последовательности. В следующей строке записаны n дробей в формате p/q (p и q целые, |p| ⩽ 10 9 , 1 ⩽ q ⩽ 10 9).

Формат выходных данных

Выведите «Yes», если для каждой пары различных i и j найдётся требуемое k, и «No» в противном случае.

Примеры

стандартный ввод стандартный вывод
1
7/42
Yes
3
3/3 0/1 -5/5
Yes
2
2/1 3/2
No

Разбор задачи F

Сократим все дроби. Произведём несколько наблюдений.


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


Во-вторых, заметим, что в каждом из множеств 0 < |x| < 1 и 1 < |x| есть не более одно го числа. Действительно, если, например, на 0 < |x| < 1 есть больше одного числа, то выберем из всех представленных там чисел два минимальных по абсолютному значению (скажем, a и b), возьмём их произведение ab, и оно будет иметь ещё меньшее ненулевое абсолютное значение: 0 < |ab| = |a||b| < min{|a|, |b|}, а значит, оно не совпадает ни с одним из чисел в нашем множестве. Аналогично с диапазоном 1 < |x|.


Таким образом, после сокращения и удаления дубликатов при условии, что ответ - Yes, в нашем множестве может быть не более восьми чисел: два нуля, две единицы, две минус единицы и по одному числу из указанных диапазонов. Значит, можно придерживаться следующей логики: сократим все числа, оставим от каждого числа не более двух его копий. Если получилось больше восьми чисел, то ответ однозначно No, иначе можно рассмотреть все пары чисел, благо их совсем немного, и честно проверить требуемое условие.