Блог пользователя MikeMirzayanov

Автор MikeMirzayanov, история, 7 лет назад, По-русски

Привет, Codeforces!

Это не совсем обычный пост от меня. Это не анонс новых фич или чемпионата, но воодушевлен я ничуть не меньше.

Рад сообщить, что с 29 января по 16 февраля 2018 г. буду читать курс "Advanced Algorithms and Data Structures" в Harbour.Space University (Испания, Барселона). Курс будет прочитан на английском языке. Слушателями этого курса будут не только студенты Harbour.Space. Курс открыт для всех желающих! Кто хочет присоединиться?

Обычно курсы приглашенных преподавателей в Harbour.Space предназначены исключительно для студентов университета. Я очень рад, что Harbour.Space в случае моего курса пошел на эксперимент, сделав курс открытым для желающих попасть именно на него. Стоимость обучения составит 1000 евро. Подать заявку можно по ссылке. В стоимость обучения не входит проживание в Барселоне и питание.

Записаться на курс →

В моих планах — подробный рассказ о некоторых алгоритмах и структурах данных, много практических занятий и акцент не только на правильность, но и красоту и структура кода. Моя цель — сделать полезные и интересные занятия для как для всех кто хочет разбираться в фундаментальном CS, так и для интересующихся соревнованиями по программированию. Наверняка, у нас будет возможность познакомиться и пообщаться. Я с удовольствием поделюсь рассказами об истории Codeforces и планами по развитию.

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

Вот предполагаемый план курса:

Неделя День Тема
1 1 Heap data structure, heap properties and operations. HeapSort. Priority queue. Other heap applications. Mergeable heaps: binomial heap, pairing heap, randomised meldable heap.
1 2 Fenwick tree. Description and motivation. Implementation of Fenwick tree. Generalisation for higher dimensions. Skip list data structure. Implementation details. Indexable skiplist.
1 3 Segment trees. Top-down implementation. Bottom-up implementation. Segment trees applications. Persistent data structures. Persistent stack, persistent array. Persistent Fenwick and segment trees.
1 4 Cartesian trees, treap data structure. Merge and split operations. Treap implementation in detail. Treap applications.
1 5 Treaps with implicit keys. Ropes. Segment reverse operation. Examples of problems.
2 6 Introduction to strings. String searching (matching) problem. Pattern pre processings. Z-function, prefix-function. Their applications. Knuth–Morris–Pratt algorithm. Matching finite state machine.
2 7 Multiple pattern matching. Trie data structure. Aho-Corasick algorithm. Implementation details. Dynamic programming on a trie.
2 8 String hashing. Rabin-Karp algorithm. Fast substrings comparison with hashes. Suffix array. LCP array. Efficient construction algorithm. Applications.
2 9 Suffix tree. Ukkonen's algorithm. Suffix tree construction from LCP array. Suffix tree applications.
2 10 Suffix automaton. Size bounds. Linear Algorithm. Using suffix automata as an index for approximate string searches.
3 11 Introduction to automata theory. Formal languages. Context-free languages. Formal grammars. Context-free grammars. NFA, DFA, convert NFA to DFA. Build automaton by regular expression.
3 12 LL(1) parser. Arithmetic expressions parsing. Shunting-yard algorithm. Simplified Pascal language parsing and interpretation.
3 13 Algorithms for traversing a graph. DFS. Properties. DFS search tree. Edges classification. Linear bridge-finding algorithm. Linear articulation points finding algorithm. Strongly connected components. Tarjan's strongly connected components algorithm.
3 14 Tree problems. Bottom-up approach. LCA problem. LCA algorithms.
3 15 Bipartite graphs. König’s criterion. Problems: maximum matching, minimum edge cover, maximum independent vertex set, minimum vertex cover. Connection of the problems. Berge's lemma. Kuhn algorithm. Kuhn algorithm properties. Minimal vertex cover by maximum matching. Cover DAG by minimal number of paths.

Университет Harbour.Space расположен в Барселоне (Испания). Пользователям Codeforces университет Harbour.Space известен по активному участию в жизни сообщества спортивного программирования (сборы и партнерство с Codeforces в рамках образовательных раундов). Основная же деятельность университета — обучение (есть бакалаврские и магистерские программы) по направлениям:

  • Maths as a Second Language
  • Computer Science
  • Data Science
  • Cyber Security
  • Interaction Design
  • Digital Marketing
  • High Tech Entrepreneurship
  • FinTech
  • BioTech
  • Aerospace Engineering
  • SuperCities UrbanTech

Mike Mirzayanov

Полный текст и комментарии »

  • Проголосовать: нравится
  • +152
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Привет!

Я рад сообщить, что два раунда Codeforces прошли вполне хорошо в плане работы Codeforces, чему я очень рад. Эти дни ночи я провел в профайлере, фиксах кода, изучению настроек MariaDB.

Кроме этого мне удалось выделить несколько часов в воскресенье (если честно, то до утра понедельника), чтобы закончить давно планируемое нововведение.

Встречайте, диагностика решений на С++!

Постоянные посетители Codeforces уже устали от вопросов менее опытных участников: «Почему моё решение не работает на тесте на серверах Codeforces, если локально я его запускаю, и оно работает? У вас неправильный компилятор/серверы!» В 99% случаях это пример неопределённого поведения в программе. Иначе говоря, программа содержит ошибки, которые в силу ряда обстоятельств не воспроизводятся при локальном запуске, но воспроизводятся при запуске на серверах Codeforces.

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

В g++/clang++ есть замечательная штука sanitizers (переводится как «дезинфицирующее средство»). Это такие способы скомпилировать программу в особом режиме так, что при своей работе она будет проверять свой ход выполнения на неопределенное поведение (и некоторые другие ошибки) и в случае возникновения выдавать их в stderr. Похожей функциональностью обладает и drmemory (некоторый аналог valgrind, но для Windows), который для определения ошибок запускает программу в особом режиме. При таких диагностических запусках колоссально страдает производительность выполнения программы (программа выполняется медленнее в 5-100 раз и требует больше памяти), но зачастую оно того стоит.

Теперь автоматическая диагностика в некоторых случаях предотвратит вопрос вида «Почему не работает???», указав на ошибку или её вид!

Если ваше решение:

  • написано на C++,
  • упало с вердиктом «неправильный ответ» или «ошибка исполнения»,
  • на этом тесте отработало предельно быстро и съело мало памяти,

то оно будет перезапущено, используя специальные диагностические компиляторы (clang++ c sanitizers и g++ с drmemory). Если при таком запуске произойдет ошибка исполнения, то журнал запуска будет отображен в деталях тестирования в разделе «диагностика». Конечно, эта запись будет содержать технический лог на английском языке, но зачастую он укажет вам на ошибку программы. Часто он содержит причину падения программы и даже строку исполнения. Если диагностика не отображается, значит хотя бы одно условие выше не выполнилось или диагностика не обнаружила ошибок.


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

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

Желаю, чтобы ваши программы не падали. Надеюсь, нововведение будет полезно!

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

P.S. Так же диагностические компиляторы просто доступны для использования. Например, их можно использовать на вкладке «Запуск». Напоминаю, что программа работает многократно медленнее и потребляет больше памяти в режиме диагностики.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +1719
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, перевод, По-русски

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

Привет.

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

Череда технических сложностей привела к такому результату. На этой неделе у нас вышел из строя сервер для системы Polygon (и очень оперативно Mail.Ru смогли его заменить, спасибо!). Я забыл переконфигурировать Polygon, что привело к проблемам на веб-серверах Codeforces. Один из серверов Codeforces вообще перестал отвечать, и что с ним я пока не знаю (такое с ним вообще впервые).

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

Еще раз приношу извинение за неудобства.

Полный текст и комментарии »

  • Проголосовать: нравится
  • -689
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Добрый день!

18-го октября завершился Четвертьфинал Южного подрегиона NEERC (Northern Eurasia) чемпионата ACM-ICPC. В Саратове встретились 73 команды, многие из которых получили приглашение по результатам квалификационного этапа.

Уже в субботу, 21-го октября в 11:05 (МСК) состоится онлайн-зеркало 2017-2018 ACM-ICPC, NEERC, Южный четвертьфинал (онлайн-трансляция, правила ACM-ICPC, предпочтительно команды).

Приглашаю команды ACM-ICPC к участию и просто индивидуальных участников соревнований Codeforces принять участие!

Конечно, соревнование будет нерейтинговое.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +122
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, перевод, По-русски

Обратите внимание, что мы напряглись и подготовили дополнительные задачи для Div 1. Таким образом, параллельно с отборочным раундом будут проведены Codeforces Round 440 Div.1 и Div.2 (рейтинговые раунды для обоих дивизионов — всё как вы любите). Участвуют все!

Добрый день.

15-го октября в 11:05 (московское время) стартует Отборочный Раунд 2 (и открытые раунды для обоих дивизионов по его мотивам) олимпиады для школьников Технокубок 2018. Раунд будет длиться два часа, участникам будут предложены 6 задач. По его результатам лучшие участники (но не более 45% от общего числа участников раунда) будут приглашены на финальный этап в Москву. Для регистрации на раунды и участия перейдите по ссылке. Не забудьте заранее зарегистрироваться на раунд. Впрочем, если забудете — не беда. Через 10 минут после старта будет открыта дополнительная регистрация для опоздавших (ее длительность — 20 минут).

Зарегистрироваться на Отборочный Раунд 2 →
Соревнование открыто для всех в виде отдельных раундов для первого и второго дивизионов.
Для всех участников всех трех редакций этого соревнования будет пересчитан рейтинг.

Напомним, что согласно правилам раундов Codeforces во время соревнования ваши решения будут тестироваться только на претестах (предварительном и неполном наборе тестов), а системное тестирование состоится после окончания раунда. Обратите внимание, что претесты не покрывают все возможные случаи входных данных, поэтому тщательно тестируйте свои программы! После прохождения претестов у вас будет возможность заблокировать решение, тем самым получив привилегию искать ошибки и взламывать чужие решения, но отказавшись от возможности перепослать ваше решение при каких-либо обстоятельствах (например, даже если вы найдете ошибку или вас взломают). Со временем задачи падают в стоимости. После системного тестирования учитываются только полные решения. Подробнее про правила соревнований можно прочитать по ссылкам:

Регистрация на олимпиаду Технокубок еще открыта. На кону — значительные квоты при поступлении в престижные технические вузы России и ценные призы. Если вы — школьник 8-11 классов и пока не зарегистрировались на Технокубок, то самое время сделать это:

Зарегистрироваться на олимпиаду →

В финал соревнования будут приглашены лучшие участники каждого из отборочных раундов (но не более 45% от общего числа участников раунда).

Желаем удачи на олимпиаде,
MikeMirzayanov и команда Технокубка

Опубликован разбор.

Поздравляем победителей!

Отборочный раунд Технокубка:

  1. Mikhniuk
  2. scanhex
  3. Krisha
  4. lis
  5. FalseMirror

Div. 1:

  1. khadaev
  2. Errichto
  3. eddy1021
  4. FizzyDavid
  5. fateice

Div. 2:

  1. wdmmsyf
  2. Legilimens2023
  3. destinydrifter
  4. oscar114514
  5. OMS

Полный текст и комментарии »

  • Проголосовать: нравится
  • +188
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Привет, Codeforces!

25 сентября 2017 года в 13:35 MSK состоится очередной раунд Codeforces #436 для участников из второго дивизиона. Традиционно, участники из первого дивизиона приглашаются поучаствовать в соревновании вне конкурса. Обратите внимание на необычное время начала раунда!

Этот раунд проводится по задачам школьного этапа Всероссийской олимпиады школьников по информатике 2017/2018 года г. Саратова. Задачи для вас готовили Perforator, MikeMirzayanov и fcspartakm. Огромное спасибо тестерам: sdya и BledDest, а так же координаторам KAN и vintage_Vlad_Makeev.

Участникам будет предложено шесть задач и два часа на их решение.

UPD Если вы школьник из Саратова и писали сегодня школьный этап Всероссийской олимпиады по информатике, убедительная просьба не принимать участие в сегодняшнем соревновании!

Поздравляем победителей!

Div. 2:

  1. zjt_ioi_2019_ak
  2. AngusRitossa
  3. Jha_The_ME_Coder
  4. cxh007
  5. Alexxx

Div. 1:

  1. Shik
  2. dreamoon_love_AA
  3. black_horse2014
  4. orbitingflea
  5. KassiJulgus

Разбор тут.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +211
  • Проголосовать: не нравится

Автор MikeMirzayanov, история, 7 лет назад, перевод, По-русски

Добро пожаловать на 2017-2018 ACM-ICPC, NEERC, Южный четвертьфинал, квалификационный этап (онлайн-трансляция, правила ACM-ICPC, предпочтительно команды).

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

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

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

Удачи!

Полный текст и комментарии »

  • Проголосовать: нравится
  • +61
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

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

MikeMirzayanov


Обратите внимание, что мы напряглись и подготовили дополнительные задачи для Div 1. Таким образом, параллельно с отборочным раундом будет проведен Codeforces Round 434 Div.1+Div.2 (рейтинговый раунд для обоих дивизионов — всё как вы любите). Участвуют все!

Добрый день.

17-го сентября в 16:05 (московское время) стартует Отборочный Раунд 1 (и открытые раунды для обоих дивизионов по его мотивам) олимпиады для школьников Технокубок 2018. Раунд будет длиться два часа, участникам будут предложены 6 задач. По его результатам лучшие участники (но не более 45% от общего числа участников раунда) будут приглашены на финальный этап в Москву. Для регистрации на раунды и участия перейдите по ссылке. Не забудьте заранее зарегистрироваться на раунд. Впрочем, если забудете — не беда. Через 10 минут после старта будет открыта дополнительная регистрация для опоздавших (ее длительность — 20 минут).

Зарегистрироваться на Отборочный Раунд 1 →
Соревнование открыто для всех в виде отдельных раундов для первого и второго дивизионов.
Для всех участников всех трех редакций этого соревнования будет пересчитан рейтинг.

Напомним, что согласно правилам раундов Codeforces во время соревнования ваши решения будут тестироваться только на претестах (предварительном и неполном наборе тестов), а системное тестирование состоится после окончания раунда. Обратите внимание, что претесты не покрывают все возможные случаи входных данных, поэтому тщательно тестируйте свои программы! После прохождения претестов у вас будет возможность заблокировать решение, тем самым получив привилегию искать ошибки и взламывать чужие решения, но отказавшись от возможности перепослать ваше решение при каких-либо обстоятельствах (например, даже если вы найдете ошибку или вас взломают). Со временем задачи падают в стоимости. После системного тестирования учитываются только полные решения. Подробнее про правила соревнований можно прочитать по ссылкам:

Регистрация на олимпиаду Технокубок еще открыта. На кону — значительные квоты при поступлении в престижные технические вузы России и ценные призы. Если вы — школьник 8-11 классов и пока не зарегистрировались на Технокубок, то самое время сделать это:

Зарегистрироваться на олимпиаду →

В финал соревнования будут приглашены лучшие участники каждого из отборочных раундов (но не более 45% от общего числа участников раунда).

Большое спасибо KAN, vovuh, Neon, ifsmirnov, irkstepanov и WHITE2302, все они участвовали в подготовке раунда.

Желаем удачи на олимпиаде,
MikeMirzayanov и команда Технокубка

UPD: Соревнование завершено. В отборочном раунде Технокубка первые три места заняли:

Место в Финале Технокубка достается лучшим 100 участникам раунда (по участника dfczyjd включительно). Поздравляем победителей!

Полный текст и комментарии »

  • Проголосовать: нравится
  • +80
  • Проголосовать: не нравится

Автор MikeMirzayanov, история, 7 лет назад, По-русски

Mail.Ru Group совместно с МФТИ, МГТУ им. Н. Э. Баумана и Codeforces в третий раз запускает Технокубок — совместную олимпиаду по программированию для школьников. В этом учебном году олимпиада вошла в перечень олимпиад школьников, повысив свой уровень до второго — круг учебных заведений, дающих льготы победителям и призерам, значительно расширился. Лучшие участники получат ценные призы от компании Apple.

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

Победители и призеры олимпиады будут определены по результатам очного этапа, который будет проведен в Москве весной 2018 года на базе площадок МГТУ им. Н.Э.Баумана и МФТИ.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +45
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Больше контестов хороших и разных! Вдохновившись рассказами droptable об успехах проведения квалификационных этапов в Восточном четвертьфинале NEERC, в этом году и Южный (саратовский) четвертьфинал объявляет о проведении квалификационного этапа. В октябре состоится 20-й юбилейный четвертьфинал в Саратове. Надеемся, что проводя квалификацию, мы сумеем дать возможность большему количеству команд попробовать себя в соревнованиях по программированию.

Для широкой аудитории 17-го сентября будет проведено онлайн-зеркало на Codeforces. Приглашаются все!

В этом году (сезон 2017-2018) Четвертьфинал ICPC Южного подрегиона NEERC будет содержать дополнительный квалификационный этап. Дата проведения — 17 сентября 2017 г. До 11 сентября необходимо зарегистрировать команду на сайте https://icpc.sgu.ru.


Зарегистрироваться →
Для команд Южного подрегиона NEERC

Приглашаются команды студентов/магистрантов/аспирантов из Астраханской, Белгородской, Волгоградской, Воронежской, Курской, Липецкой, Нижегородской, Пензенской, Ростовской, Самарской, Саратовской, Тамбовской, Ульяновской областей, Краснодарского, Ставропольского краёв, республик Адыгея, Дагестан, Кабардино-Балкария, Калмыкия, Карачаево-Черкесия, Чечня, Марий Эл, Мордовия, Северная Осетия, Татарстан, Чувашия. Команды должны состоять из трёх студентов/магистрантов/аспирантов (ниже смотрите формальные требования), представляющих один вуз. Участие в квалификационном этапе бесплатное. Оргвзнос не предусмотрен.

Этап будет одновременно проведен на нескольких площадках в ряде городов Южного подрегиона NEERC. Продолжительность квалификационного этапа 4 часа, язык условий — русский. Будет доступен перевод условий на английский язык.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +76
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-английски

Hello, Codeforces!

I am pleased to announce the 2nd Hello Barcelona Programming Bootcamp in collaboration with Moscow Workshops ACM ICPC, which will be hosted by our partner Harbour.Space University together with Moscow Workshops ACM ICPC, ITMO University, Moscow Physics and Technology University, Saint Petersburg State University and Codeforces!



The boot camp will be held from September 27th to October 5th in Barcelona. This time it will be at the beautiful and technologically mind-bending Media-TIC building — the Smart Building of Tomorrow.



Media-TIC building — the Smart Building of Tomorrow

The world's greatest coaches will be attending: Andrew andrewzta Stankevich, Michael Endagorion Tikhomirov, Gleb GlebsHP Evstropov, Artem VArtem Vasilyev and other world renowned Russian coaches. As a coach, I will come too. The Chief Judge of the camp is Oleg snarknews Khristenko. Seriously, it will be a unique opportunity for teams around the world to learn from such well-known and successful coaches in the ACM-ICPC world.

Having visited the first Hello Barcelona programming Bootcamp in February, I left the event feeling inspired from the overall atmosphere. I am sure that all teams received an immense amount of knowledge and skills. As one of the coaches, all of the flattering reviews about the camp from the participants were pleasant for me to hear. I am very glad that these camps are becoming regular. Harbour.Space University and Moscow Workshops ACM ICPC have done a job worthy of admiration!

The Bootcamp will be split in two divisions:

  • Division A. Designed to prepare students to excel and win medals in the next ACM-ICPC World Finals.

  • Division B. Designed to help teams prepare for the next season of ACM-ICPC Regionals and international competitions. This is an appropriate introduction for teams and students new to the world of ACM ICPC and competitive programming competitions in general. The Division B curriculum features thematic lectures and contests.

The participation fee is unchanged: €1270 per person (cultural program, accommodation and half-board meals included).

Single participants and teams must register by July 1st, 2017 to receive the 15% off-Early Bird Discount, or the 20% off-Loyalty Discount, which is awarded to teams that participated in previous Moscow Workshops ACM ICPC boot camps.


Learn more about Barcelona ACM-ICPC Bootcamp

You can ask any questions by email: [email protected]

Hope to meet you on the Bootcamp, Mike Mirzayanov

In order to experience the atmosphere of the event, I suggest you familiarize yourself with the photos and videos from the 1st Hello Barcelona programming Bootcamp in collaboration with Moscow Workshops ACM ICPC.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +137
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Общая информация

Саратовский государственный университет в первой половине августа проводит международную летнюю студенческую школу по программированию. Продолжительность школы — десять дней, школа пройдет с 31-го июля по 10-е августа 2017 года.

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

Школа пройдет в живописном месте, на одной из саратовских баз отдыха на берегу Волги. Участники будут расселены в уютных номерах по 2-4 человека и обеспечены трехразовым питанием. На территории базы имеется собственный пляж и спортивные площадки.

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

Полный текст и комментарии »

  • Проголосовать: нравится
  • +82
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

24-го мая 2017 г. в 18:00 (московское время) начнется главное событие года в мире спортивного программирования — финал командного студенческого чемпионата мира ACM-ICPC 2017!

Позади открытие и пробные туры. 128 команд со всего мира собрались в Рэпид-Сити (США), чтобы определить кто из них станет чемпионом мира, кто получит медали чемпионата.

Масштаб проведения чемпионата этого сезона поражает воображение. Всего во всех отборочных этапах чемпионата приняли участие 46381 студент из 2948 университетов 103 стран мира 6 континентов! 5073 тренеров готовили эти команды к участию в чемпионате. В зависимости от региона команды прошли четвертьфиналы, локальные отборы, региональные соревнования. Лучшие 128 команд приехали в Рэпид-Сити для участия в Финале.

Болейте за своих земляков, любимые команды и просто сопереживайте участникам!

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

Болеем по ссылкам:

Трансляция на русском языке:
Трансляция на английском языке:
Трансляция от легендарных Petr, tourist, Endagorion:

Полный текст и комментарии »

  • Проголосовать: нравится
  • +292
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Добрый день.

Финал чемпионата мира ACM-ICPC в самом разгар. Совсем недавно завершилась церемония открытия. За эти дни директорат поделился некоторыми новостями.

  1. Напомню, что этот сезон (2016-2017) последний, когда генеральным спонсором чемпионата является компания IBM. 20 лет IBM поддерживала ACM-ICPC, вкладывая миллионы долларов ежегодно. Спасибо, IBM! В настоящий момент активно прорабатывается модель, когда будет не один генеральный спонсор, а будет фонд в котором будут участвовать несколько компаний. На открытии был упомянут Sport Programming Foundation — полагаю, этот фонд и будет основным для будущих сезонов проведений чемпионата. Однако это еще не близкие планы.

    Было анонсировано, что ближайшие три года генеральным спонсором ACM-ICPC будет компания JetBrains! Это потрясающая новость. Особенно приятно, что это фактически российская компания, а её исполнительный директор Максим Шафиров тренировал команду СПбГУ, ставшую чемпионом мира в 2000-м году! Уверен, как приятный бонус нас будут ждать замечательные среды разработки от JetBrains в будущих финалах чемпионата.

  2. Происходит реформа устройства отборочных этапов чемпионата. Например, теперь уже наш региональный контест (NEERC) не является частью европейских чемпионатов, а составляет отдельную лигу Northern Eurasia. Вообще, были выделены 8 лиг (читай, супер-регионов): Европа, северная Евразия, северная Америка, латинская и южная Америка, две лиги в Азии, Африка и, наверное, Австралия и Океания. Планируется, что в каждой лиге будет свой отдельный финал с медалями и лучшие 12 команд из каждой лиге получат путевку на финал чемпионата мира. Кстати, в такой классификации российские четвертьфиналы становятся полуфиналами! Пока это еще отдаленные планы, но первые шаги уже сделаны. Обсуждается своя квота на количество участий в финалах лиг (3 раза).

  3. К сожалению, в этом году значительная часть команд не получили визы совсем (5 команд) и еще десяток не смогли приехать полностью из-за визовых проблем одного из участников. Саратовский ГУ, видимо, оказывается в их числе. Было анонсировано решение пригласить в следующий финал без каких-либо отборов и учёта квот 5 команд, которые не смогли приехать в этом году. Кроме того, предлагается дать +1 год к участию (без учёта каких-либо других требований) всем командам, которые не смогли приехать полностью.

  4. Следующий финал чемпионата состоится в Пекине, а через год — в Коччи (Индия).

Такие новости.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +523
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-английски

Hello!

I'm happy to visit Rapid City and meet so many bright contestants here!

I have Codeforces laptop stickers with me and I'll be glad to give them as small gifts to participants of the World Finals. You can find me (I do not have many stickers, be quick) to get gifts. My friend collects coins, so I'll be glad to receive a coin from your country as a souvenir.

See you. And good luck on the contest!

Mike

UPD Still have few stickers. You have a chance!

Полный текст и комментарии »

  • Проголосовать: нравится
  • +170
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Добрый день, Codeforces!

Совсем скоро, в четверг 11 мая в 18:35 (московское время) начнется Playrix Codescapes Cup. Вас ждем рейтинговый комбинированный раунд, который открыт для всех и каждого!

Задачи для вас предложили и подготовили KAN, Al.Cash, MikeMirzayanov и fcspartakm. В раунде будут задачи как для участников из Div.2, так и для Div.1. Надеемся, вам будет интересно.

Мне всегда приятен интерес со стороны компаний к нашему сообществу. Вдвойне приятно, когда узнаешь, что российская компания находится в самом топе своей нише в мире. Вот только недавно я читал статью о Playrix, а сейчас они проводят соревнование на платформе Codeforces и ищут талантливых разработчиков на C++. В программе призы топ-5 и футболки топ-50 участникам раунда!

Слово руководителю московского офиса Playrix Алексею Трушкову.

Всем привет!

Компания Playrix и Codeforces объявляют о запуске первого Playrix Codescapes! На кону ценные призы, а лучшие 50 участников получат памятные футболки.

Призы:
- Топ 1: iPadPro 9,7 + PowerBank + футболка с логотипом
- Топ 2-5: PowerBank + футболка с логотипом
- Топ 6-50: футболка с логотипом
- (Новое!) Случайные 5 участников (не топ-50, сделали хотя бы одну попытку): футболка с логотипом

Playrix – это команда из более 500 профессионалов, которая занимает первое место среди разработчиков мобильных игр СНГ. Вы можете подумать: «Мобильные игры? Зачем им сложные алгоритмы?». Нашел, что три фишки одного цвета собрались в линию – вот и все. А вот и нет! Сделать игру, которая была бы одновременно красивой, быстрой, и укладывалась в жесткие ограничения объема памяти и быстродействия мобильных устройств – та еще задачка. Чтобы с этим справиться, нам часто приходится применять весьма сложные и нетривиальные алгоритмические решения. Мы публикуем о них статьи habrahabr: о тонкостях FSE кодирования и оптимизации игры с помощью полигональных атласов, например. А бывает, что конвертеры графических форматов, созданные именитыми фирмами, не устраивают нас ни по качеству, ни по быстродействию. И тогда нам приходится создавать свой. Это далеко не полный список сложных задач, возникающих при разработке наших игр.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +464
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Добрый день.

Соскучились по чему-то новенькому? У меня есть чем вас порадовать!

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

Домены для групп

Вот вам пример такой группы. Она открыта для всех — заходите и смотрите: http://example.contest.codeforces.com

Домен группы

Теперь при создании/редактировании группы можно указать её (под)домен (от 3 до 20 букв-цифр, начинается с буквы). При указании домена группа будет доступна по ссылке вида http://yourgroupdomain.contest.codeforces.com. По ссылке такого вида верно следующее:

  • Ничего лишнего отображаться не будет — отображаемый сайт содержит только соревнования/блоги вашей группы и ничего другого.
  • Всё, что нужно для отображения — это доступ по HTTP до 77.234.215.194. Если вы проводите официальный контест, важную тренировку или контрольную — смело блокируйте весь остальной интернет, кроме этого IP-адреса.
  • Пока такие группы могут содержать только приватные соревнования и тренировки. Например, вы можете сделать свой мэшап и настроить его так, как нужно именно вам. Возможно, в будущем мы что-то придумаем с этим ограничением, а пока — так.
Разрешенные подсети для домена

Чтобы быть уверенным, что лишние люди не перейдут по вашей ссылке вида http://yourgroupdomain.contest.codeforces.com, можно ограничить доступ к ней по IP. Указывайте точные IP-адреса или подсети. Например, 188.93.56.35;212.193.32.0/19.

Язык интерфейса для домена

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

Html заголовка

Вы можете поменять хедер сайта по адресу http://yourgroupdomain.contest.codeforces.com, чтобы там был не привычный, дорогой сердцу логотип Codeforces, а логотип или название вашего мероприятия. Например, проводя межвузовскую олимпиаду в Саратове, я указывал <h3>Межвузовская олимпиада по программированию 2017 (Саратов)</h3>.

Пользователи домена (в сайдбаре)

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

Вы можете добавить синтетических пользователей именно для вашей группы с доменом (используя эти аккаунты, зайти в группу можно только через домен). Для этого используйте специальную настройку "Пользователи домена". Каждая строка соответствует одному пользователю и должна быть записана в формате id соревнований (через запятую) | хэндл | пароль | имя. Вот пример этой настройки для домена example.contest.codeforces.com:

213380 | u01 | 371111 | Petr Korotkevich
213380 | u02 | 627492 | Gennady Soejima
213380 | u03 | 491591 | Makoto Knuth
213380 | u04 | 581711 | Donald Cormen
213380 | u05 | 057259 | Thomas Mitrichev

Да, вы можете почувствовать себя Петром Короткевичем, зайдя на http://example.contest.codeforces.com, используя логин u01 и пароль 371111.

О настройках приватности

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

Для приватных контестов можно установить дополнительные настройки:

  • Разрешить дорешивание — можно ли решать задачи после официального окончания в неофициальном режиме дорешивания
  • Разрешить виртуальное участие — можно ли после окончания официального окончания (или когда угодно, если нет времени старта) участвовать виртуально
  • Разрешить участие вне конкурса — зарезервировано под участие вне конкурса, пока вне конкурса можно регистрировать только пользователей домена (для нужных пользователей нужно добавить символ ‘o’ после id соревнования, например “213380o | u01 | 371111 | Petr Korotkevich”)
  • Разрешить саморегистрацию — может ли участник группы зарегистрироваться на контест сам (если нет — регистрируйте его)
  • Разрешить незарегистрированным пользователям наблюдать за ходом соревнования — может ли участник группы, не зарегистрированный на контест, войти в контест и видеть задачи, статус, результаты и прочие подробности
  • Включить общий статус — могут ли участники видеть информацию о попытках других участников, или же им доступна информация исключительно о собственных попытках
  • Длительность заморозки и время разморозки. Будьте аккуратны при переносе контеста — время разморозки надо изменять самостоятельно.
  • Политика отображения тестов. Возможные варианты: “не показывать вообще”, “показывать непройденные тесты собственных решений”, “показывать полностью все тесты”
  • Политика отображения чужих попыток. Возможные варианты: “не показывать вообще”, “показывать решившим задачу”, “показывать всем”.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +609
  • Проголосовать: не нравится

Автор MikeMirzayanov, история, 7 лет назад, По-русски

Сегодня, 26-го апреля в 18:35, начнется VK Cup 2017 - Уайлд-кард раунд 2.

Участникам раунда будет предложено за неделю максимально продвинуться в решении одной необычной задачи. Официально в этом раунде смогут принять участие команды чемпионата VK Cup 2017, которые прошли в Раунд 2, но не оказались среди тех топ-100 лучших по его результатам, кто проходит в Раунд 3. Кроме того, этот раунд будет открыт для всех желающих для неофициального участия вне чемпионата. Зарегистрироваться на раунд можно будет в любое время пока он идет.

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

Удачи!

UPD 1: Соревнование завершено. Лучшие 20 команд получают путевку в VK Cup 2017 Раунд 3! Спасибо за участие.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +117
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Hello Codeforces!

I am pleased to announce a long term partnership with Harbour.Space University and Codeforces.

Harbour.Space is supporting the return of a new series of educational rounds on Codeforces!

They will take place with the regularity of ~2 times per month with the first round on 14:35 UTC, 27th of March, 2017.

Education Rounds Rules:

  • Scholarships to study Data Science, Computer Science and Cybersecurity in Barcelona for best performing participants, courtesy of Harbour.Space University (more details later!);
  • Classic Duration: 1.5 — 2.5 hours;
  • The goal is rather to practice and to educate, than to compete;
  • Not only problems, but also exercises can be used;
  • Useful, even well-known ideas can be reused in order to introduce them to a wide range of participants;
  • Unrated (perhaps only for now);
  • We will conduct them in the ACM-ICPC mode;
  • The results that are obtained after the end of the round, are preliminary;
  • After the end of the round will be a 24-hour period of open hacks — any visitor of Codeforces may try to hack any complete solution to a problem of the last round (either from a contest, or from practice), the source code of hacking solution is available (you can copy the text and, for example, stress it);
  • All successful hacks from the previous item will be added to the official test set and after as long as 24 hours after the end of the round retesting of all complete solutions will be made;
  • Only after the final standings based on improved test data, the results are final;
  • Our ability to process such problems are limited, so actually the test suites from the jury are expected to end up incomplete — we are looking forward to your hacks!

In February I had a new and wonderful experience of coaching top teams at the Barcelona ACM-ICPC Bootcamp hosted by Harbour.Space University. I was really impressed by the university, participating teams and fellow coaches from our community such as Endagorion, GlebsHP, Michael, Jacob and snarknews that were also there.

During the bootcamp it became clear to me that Harbour.Space University is a new type of university that’s reinventing the university experience. It is a modern, adaptable and flexible university that is doing amazing things in preparing talented students for careers in Computer Science, Data Science and Cyber Security.

All of their programs are developed in collaboration with the industry and are taught by the top professionals in the respective fields such as Viktor Kantor, Edith Elkind, Alexander Kulikov, Alex Dainiak, Sergey Nikolenko, Deepa Gupta and many others. I am delighted to be joining Harbour.Space fantastic faculty. Together we are developing a series of courses on competitive programming in addition to the bi-annual ACM ICPC Bootcamp that will be hosted by the university in Barcelona.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +217
  • Проголосовать: не нравится

Автор MikeMirzayanov, история, 7 лет назад, По-русски

11 марта в 15:00 начнётся второй квалификационный раунд чемпионата VK Cup 2017!

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

Раунд продлится 24 часа, такая продолжительность выбрана для того, чтобы все нашли себе удобное время для участия. Квалификационный раунд, как и все предстоящие раунды, требует отдельной регистрации, она будет открыта на протяжении всего раунда.

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

В Раунд 1 пройдут все команды, которые наберут положительное количество баллов, не меньше количества баллов у команды на 500-м месте.

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

Категорически запрещается публиковать где-либо условия задач/решения/какие-либо мысли и соображения о них до окончания раунда. Запрещено обсуждать задачи с кем-либо, кроме вашего сокомандника. Будьте честны, пусть в Раунд 1 пройдут сильнейшие!

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

Полный текст и комментарии »

  • Проголосовать: нравится
  • +61
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Всем привет!

4 марта в 15:00 начнется первый квалификационный раунд чемпионата VK Cup 2017!

Раунд продлится 24 часа, такая продолжительность выбрана для того, чтобы все нашли себе удобное время для участия. Квалификационный раунд, как и все предстоящие раунды, требует отдельной регистрации. Регистрация уже открыта и будет открыта на протяжении всего раунда.

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

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

Чтобы пройти в Раунд 1, вам надо принять участие хотя бы в одной из квалификаций. Из каждой квалификации в Раунд 1 проходят все команды с положительным числом баллов, которые набрали не меньше баллов, чем команда на 500-м месте.

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

Категорически запрещается публиковать где-либо условия задач/решения/какие-либо мысли и соображения о них до окончания раунда. Запрещено обсуждать задачи с кем-либо кроме вашего сокомандника. Будьте честны, пусть в Раунд 1 пройдут сильнейшие!

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

Полный текст и комментарии »

  • Проголосовать: нравится
  • +51
  • Проголосовать: не нравится

Автор MikeMirzayanov, 7 лет назад, По-русски

Привет, Codeforces!

Мы с радостью сообщаем вам, что компания ВКонтакте совместно с площадкой Codeforces вновь проводит чемпионат VK Cup. К участию в VK Cup 2017 допускаются команды до двух человек, так как практика парного программирования широко распространена во всем мире, в том числе и ВКонтакте. За призы и звание победителя приглашается побороться русскоязычным молодым специалистам, студентам, школьникам и просто любителям алгоритмов и программирования.

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

  • 1 место — 1048576 рублей
  • 2 местo — 524288 рублей
  • 3 местo — 262144 рубля
  • 4-8 места — 131072 рубля

Полный текст и комментарии »

  • Проголосовать: нравится
  • +210
  • Проголосовать: не нравится

Автор MikeMirzayanov, история, 7 лет назад, По-русски

Добрый день.

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

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

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

Участники, болеем за вас!

UPD 1: Спасибо, spadiff. Опубликована суммарная таблица результатов по многим регионам. Пока в ней только первый тур, но скоро появится и второй.

UPD 2: Второй тур завершен. Теперь можно отдыхать и немного переживать за квоты на заключительный этап.

Полный текст и комментарии »

  • Проголосовать: нравится
  • +134
  • Проголосовать: не нравится

Автор MikeMirzayanov, история, 8 лет назад, По-английски

Hello Codeforces!

I'm pleased to announce the first championship hosted on the Codeforces platform. Welcome 8VC Venture Cup 2017!

8VC will be hosting a coding championship on Codeforces. The championship will begin on January 15 and take place in 2 rounds.

The contest will occur in two rounds:

  • The Elimination Round is online and takes place on January 15, 17:05 (UTC). Elimination Round follows regular Codeforces rules and consists of 7-8 problems. For this round, the complexity of the problems will be comparable to a regular Codeforces round. There are no eligibility restrictions to participate in the round.
  • The Final Round takes place on January 22, consists of 5-6 problems, and uses regular Codeforces rules. The complexity of the problems is higher than a regular Codeforces round. We will invite the top local finishers in Elimination Round to Woodside, CA to compete in the Final Round. In addition, we will invite the top 200 overall finishers to compete online.

Cool prizes are offered to winners and best participants.

PRIZES
  • Overall 1st place — $2000
  • Overall 2nd place — $1000
  • Overall 3rd-5th places — $500 each
  • Overall 1-50th place — t-shirts with 8VC and company logos
  • Local Winner — Dinner with Joe Lonsdale (founder of Palantir, Addepar and 8VC) and other Silicon Valley technologists
  • Local top finishers — Opportunity to meet with leadership from 8VC portfolio companies
ABOUT 8VC

8VC, which consists of Joe Lonsdale (co-founder of Palantir) and his core team from Formation | 8, is a Silicon Valley venture capital firm that invests in industry-transforming technology companies. The team's investment portfolio includes companies such as the selected companies below, and a host of other top technology platforms that leverage modern algorithms and data science to power their core business processes.


Connect to 8VC

Полный текст и комментарии »

  • Проголосовать: нравится
  • +164
  • Проголосовать: не нравится

Автор MikeMirzayanov, история, 7 лет назад, По-русски

Привет, Codeforces!

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

Пока только базовый и неполный функционал, но давайте обкатаем и этот.

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

Давайте потестируем и поймем вместе куда и как двигаться дальше с этим функционалом.

Из планируемого, обдумываемого, обсуждаемого:

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

Какие еще будут мысли?

Полный текст и комментарии »

  • Проголосовать: нравится
  • +208
  • Проголосовать: не нравится