Предстоящи състезания:
25. Юни, Неделя :: CodeForces #420 (Div2), от 17:30 часа
27. Юни, Вторник :: TopCoder SRM 716, от 4:00 часа
27. Юни, Вторник :: CodeForces #421 (Div1, Div2), от 17:30 часа
29. Юни, Четвъртък :: CodeForces Educational Round #24, от 18:00 часа
30. Юни, Петък :: TopCoder SRM 717, от 14:00 часа
Сайт за алгоритми, състезателна информатика и програмиране.

Новини

IOI 2017

Публикувано на 18. Май, 2017г.
Международната Олимпиада по Информатика (International Olympiad in Informatics 2017) тази година ще се проведе между 28-ми Юли и 4-ти Август, 2017г, като страната домакин този път е Иран.

Отборът, който ще представи България, вече е известен. Това са хората, справили се най-добре на Националната Олимпиада по Информатика и последвалите я две контроли:
  • Енчо Мишинев, 12-ти клас, ПМГ "Атанас Радев", Ямбол
  • Виктор Терзиев, 11-ти клас, СМГ "Паисий Хилендарски", София
  • Радослав Димитров, 10-ти клас, ОМГ "Акад. Кирил Попов", Пловдив
  • Петър Няголов, 10-ти клас, ПМГ "Баба Тонка", Русе
Нека пожелаем успех на момчетата и им стискаме палци по време на състезанието!

Hack The Fake News

Публикувано на 16. Май, 2017г.
Този уикенд отново ще се проведе евент, организиран от Data Science Society, този път с една тематика "Hack The Fake News". Проблем, който става все по-популярен сред социалните мрежи а и дори в търсачки като Google, участниците в хакатона ще трябва да измислят как могат да разпознават достоверна новина от изфабрикувана такава.

Хакатонът ще бъде открит този петък, 19-ти Май, като вечерта ще има презентация на проблема, след което отборите се сформират и коденето започва. Крайният срок за предаване на решения ще е ранния следобяд в неделя - тоест участниците ще имат по-малко от 48 часа за разработване на решенията си. Повече информация за събитието можете да научите тук.

Data Science Society Datathon

Публикувано на 09. Март, 2017г.
Между 24-ти и 26-ти Март в София ще се проведе първият хакатон за данни, или Datathon, организиран от Data Science Society. В него няколко фирми (сред които VMware, Hyperscience, и Ontotext) ще представят проблеми, с които са се сблъсквали и изискват иновативно решение, базирано на data mining и machine learning.

Дататонът ще бъде с характера на стандартен хакатон, като от всяка фирма ще има ментори, които да помагат на участниците с части от проблема. Самата разработка на решения ще започне в 00:00 часа в Събота и ще продължи до 15:00 в Неделя - след което ще има презентации на решенията и награждаване.

Google Code Jam 2017

Публикувано на 08. Март, 2017г.
Започна регистрацията за тазгодишното издание на Google Code Jam - едно от най-популярните (а и най-интересните) състезания по програмиране.

Задачите се подготвят от стотиците (буквално) състезатели от цял свят, които работят в компанията. В следствие на това, почти всяка година задачите са интересни, оригинални и добре тествани.

Регистрацията тече до 7-ми Април, когато ще се проведе квалификационният кръг (в който ще можете да участвате 27 часа). Трите възможности за първия кръг са на 15-ти Април от 4:00 часа, 22-ри Април от 19:00 часа, и 30-ти Април от 12:00 часа на обяд. Останалите два онлайн кръга, а както и Distributed версията, ще се проведат през Май и Юни.

Deadline24

Публикувано на 12. Февруари, 2017г.
Отворена е регистрацията за състезанието Deadline24 - отборно състезание, подобно на Challenge24, в което се решават няколко алгоритмични и/или NP-пълни задачи в рамките на 24 часа.

Регистрацията е възможна до 9-ти март, като квалификационният кръг ще се проведе на 12-ти Март, най-вероятно включвайки 4 задачи за 5 часа. Финалът на състезанието ще бъде на 22-23 Април в Полша.

Ready... Set... Act!O(n)

Публикувано на 25. Януари, 2017г.
Една моя малка мечта най-накрая се сбъдна - сайтът вече си има оценяваща система, в която можете да тествате решенията си!

Разработката на системата започна преди над 8 месеца, и към момента не е напълно завършена (работя по въпроса). Все още липсват някои от основните неща, които планирам да има, като например:
  • Тренировъчна секция, със задачи, групирани по теми и линкове към подходящи материали и анализи
  • Поддръжка на Java и Python
  • Релативни задачи (игри)
  • Състезания
  • Възможност за "частни" състезания, организирани от ръководители на школи
За сега липсват и голяма част от задачите, които ще има на системата. (Не много хора знаят, но вече съм дал близо 200 задачи на най-различни състезания - национални и международни - които мисля да направя достъпни на системата.)

Надявам се системата да ви бъде полезна! Ще се радвам ако споделите и фийдбек за нея - какво според вас липсва, какво е готино направено, и най-вече, ако забележите някакви проблеми с нея (поне в началото такива ще има със сигурност).

Google HashCode 2017

Публикувано на 9. Януари, 2017г.
Отворена е регистрацията за едно от по-нестандартните състезания по програмиране - Google HashCode. В него ученици, студенти, и професионалисти могат да премерят сили в отбори от 2 до 4 човека, решавайки нестандартни оптимизационни задачи (без перфектно решение). Като цяло задачите са интересни и самият финал е доста фън (имах късмета миналата година да участвам там).

Регистрацията продължава до 20-ти Февруари, като квалификационният кръг ще се проведе на 23-ти Февруари, от 19:30 до 23:30 часа. Финалът ще бъде в офиса на Google в Париж в началото на Април.

happy = new Year();

Публикувано на 1. Януари, 2017г.
Честита Нова Година! Нека 2017-та е изпълнена с усмивки, щастливи момент, задачки, и успехи на състезателите ни, надминаващи дори тазгодишните!

През изминалата 2016-та година сайтът имаше доста развитие (много от промените бяха задкулисни и/или все още са недостъпни за повечето потребители). Броят посещения на заглавната страница нарастна повече от двойно (от 64000 до 143000), а някои от страниците набраха доста популярност - тази за интервюта от 16000 вече е на почти 38000, докато новата страница за логически задачи вече е с 22500 (там отидоха и задачките на седмицата).

Други популярни страници са:
  • Сложност на алгоритми, с 11432 разглеждания;
  • Динамично програмиране (част I), с 6301 разглеждания;
  • Разделяй и владей, с 4003 разглеждания;
  • Езици и среди за програмиране, с 3821 разглеждания;
  • Рекурсия и търсене с връщане, с 3605 разглеждяни;
  • Двоично търсене, с 3514 разглеждания.

Моментът назря най-накрая да вкарам по-смислена статистика и отскоро вече сайтът ползва Google Analytics (едно от "задкулисните" подобрения).

Донякъде радостно е, че някои от темите са се харесали на някого достатъчно много, че да копира части от тях в Wikipedia. Например можем да видим доста елементи (включително код) от темата за Двоично Търсене в статията в уикипедия за него.

Тази година успях да намеря време и да напиша няколко теми. Публикуваните през 2016-та са: Графи и представяне на графи, Побитови операции, Бързо степенуване, Динамично оптимиране (част II), Динамично оптимиране (част III), Индексни Дървета, Сегментни Дървета, Meet-in-the-Middle, и Кнут-Морис-Прат. През 2017-та се надявам също да успея да намеря време, като ще се стремя да има по една нова тема на месец.

Последно, за най-голяма моя радост, успях да отделя време и за разработка на състезателната система, която от толкова време ми се ще да направя. Съвсем скоро ще бъде пусната първата публична бета - stay tuned! =)

Facebook HackerCup

Публикувано на 31. Декември, 2016г.
През Януари ще се проват онлайн кръговете на едно от най-големите световни състезания, отворени за всички - организираното от Facebook състезание Facebook HackerCup.

Първият кръг ще е квалификационен и ще продължи три дни - от ранни зори Събота, 7. Януари, до ранни зори на 10-ти Януари. Всички, решили поне една задача успешно, ще бъдат класирани за следващия кръг.

Първият "реален" кръг, в който класирането има значение, е следващата събота - 14. Януари, от 20:00 часа, като ще бъде с продължителност 24 часа. Още няма информация колко човека ще се класират от него.

Вторият и третият кръг ще са следващите две съботи (съответно 21-ви и 28-ми Януари), също от 20:00 часа, но ще са с по-кратка продължителност: 3 часа.

Регистрацията се случва на тази страница. Успех на тези от вас, които решат да участват!

Кнут-Морис-Прат

Публикувано на 28. Декември, 2016г.
Публикувана е темата за алгоритъма на Кнут-Морис-Прат (по-известен като KMP). Постарах се да има яки примери :)

Както винаги, като нова тема има вероятност да има грешки (правописни и смислови) - ако откриете такива не се колебайте да ги репортнете.

Индексни и Сегментни Дървета

Публикувано на 18. Декември, 2016г.
По предложение на двама от потребителите (имаха valid point) прекръстих досегашната тема за индексни дървета на сегментни дървета, след което написах и темата за истинските индексни дървета, също познати като Дървета на Фенуик, Binary Indexed Trees (BIT), или Lowest-bit Index Trees. Както винаги, темата е нова, бла бла, възможно е да има грешки :)

П.С.: Както никога, в темата има някакви цветни схемички. Упрекнаха ме, че било много нетипично за сайта.

Турнир за Купата на Декана 2016

Публикувано на 12. Ноември, 2016г.
На 4-ти Декември тази година от 10:00 ще се проведе 13-тото (фатално) издание на Турнира за Купата на Декана (по информатика).

Предвидени са 10 задачи, като има за всеки по нещо - тяхната сложност варира от много прости, до относително сложни такива.

Състезанието отдавна е поле за изява за най-добрите студенти на Факултета по Математика и Информатика към Софийски Университет, като в последните години в задочната му форма се включват и много ученици, а както и студенти от други университети.

Предходните две години имаше парични награди, дадени от университета, като тази ще има и материални такива, дарени от Ралица Димитрова и Александър Георгиев (бивши студенти на факултета):
  1. Първенецът от присъственото състезание ще получи шумозаглушаващи слушалки Bose QuietComfort25.
  2. Човекът на второ място от присъственото състезание ще получи дрон Parrot Mambo.
  3. Човекът на трето място от присъственото състезание ще получи бордигра Ticket to Ride: Europe.
Допълнително, малка награда е предвидена и за първенецът от задочното състезание.

Ако сте студент от първи до четвърти курс във ФМИ можете да се запишете за турнира следвайки указанията на разлепените из ФМИ афиши. Ако не сте студент на СУ или сте ученик, но желаете да се включите в задочната форма на състезанието, то ще се проведе на платформата Hackerrank, като можете да се регистрирате на страницата на състезанието. Миналата година задочната форма беше спечелена именно от ученик, така че не се притеснявайте да се включите в състезанието!

Update:
Победител в цялото състезание стана Радослав Димитров - ученик в 10-ти клас от ОМГ "Акад. Кирил Попов", гр. Пловдив.

В присъственото състезание (заемайки второ място в смесеното класиране) с 8 решени задачи победител стана Даниел Атанасов, студент първи курс в специалност Компютърни Науки. На второ място със 7 задачи стана Иво Дилов, също първокурсник от КН. На трето място с 6 задачи пък се класира Георги Шопов, студент 4-ти курс от КН. Петицата допълниха Антон Чернев (КН, първи курс) и Марк Андонов (КН, трети курс). Като цяло много силно представяне на специалност Компютърни Науки!

В онлайн състезанието, след Радослав Димитров, на второ и трето място с по 8 задачи се наредиха Петър Няголов (ученик 10-ти клас от МГ "Баба Тонка", гр. Русе) и Иван Ганев (11-ти клас, ПМГ "Нанчо Попович", Шумен - победител от миналата година).

Освен предварително обявените награди, такива ще бъдат раздадени и от ФМИ: Лаптоп, фотоапарат, и два принтера.

Анализ на задачите можете да намерите тук: http://informatika.bg/tzkd2016.
Крайното класиране можете да намерите тук: https://www.hackerrank.com/contests/deans-cup-2016/leaderboard.

Russian AI Cup

Публикувано на 9. Ноември, 2016г.
Попаднах на едно интересно състезание, свързано с писане на изкуствен интелект за игри - Russian AI Cup. Това издание ще има интересни награди и ще се проведе в няколко кръга. Повече информация кога ще се проведат трите кръга, за наградите, и как да участвате, можете да намерите на сайта на състезанието.

Meet-in-the-Middle

Публикувано на 8. Ноември, 2016г.
Публикувана е темата за срещане в средата (meet-in-the-middle).

Тъй като е нова и още не е минала проверка е възможно да има грешки (правописни или смислови) - ако откриете такива, не се срамувайте да съобщите за тях, селектирайки текста и натискайки enter.

Ако забележите, че copy-paste-вам от предната новина, значи следите. Браво!

Индексни Дървета

Публикувано на 31. Октомври, 2016г.
Публикувана е темата за индексни дървета.

Тъй като е нова и още не е минала проверка е възможно да има грешки (правописни или смислови) - ако откриете такива, не се срамувайте да съобщите за тях, селектирайки текста и натискайки enter.

СофтУниада 2017

Публикувано на 25. Октомври, 2016г.
В началото на Януари 2017-та година ще се проведе второто издание на СофтУниада - едно от малкото български частни състезания по информатика. Както и миналата година, СофтУниада-та ще се проведе в два състезателни дни:
  • 7. Януари, 2017г.: Състезателно Програмиране
  • 8. Януари, 2017г.: Софтуерна и Уеб Разработка
Състезателното програмиране ще включва 10 алгоритмични задачи, които състезателите ще трябва да решат за 5 часа. Участието е индивидуално и ще се проведе в залите на СофтУни. Възможно (даже препоръчително) е ползването на личен лаптоп.

Тъй като участието е отворено за всички, ще има две възрастови групи: младша възрастова група до 16 години и старша възрастова група над 16.

Организаторите обещават примамливи награди за първенците: два PlayStation 4, тениски, сертификати, купи и медали.

Регистрацията тече до 9-ти Декември, но препоръчвам по-ранна регистрация поради ограничените места.

Динамично Оптимиране 2 и 3

Публикувано на 20. Октомври, 2016г.
Качих две от продълженията на темата за динамично оптимиране:
  • част 2, описваща как се пише итеративно динамично и как то може да ни спести известно количество памет;
  • и
  • част 3, където пък говорим за динамични по битови маски и по шаблон.
Все още не съм имал време щателно да проверя темите за грешки, така че е възможно да се намират такива.

CodeIT 2016-2017

Публикувано на 4. Октомври, 2016г.
Започва новият сезон на един от най-популярните частни български турнири по програмиране - CodeIT.

Както всяка година, и тази той ще се проведе в шест задочни и един присъствен финален кръг. Задочните кръгове са или от тип Маратон, или Спринт, като се редуват всеки месец. Маратонските кръгове са една по-сложна, обикновено NP-пълна задача, за която състезателите трябва да напишат апроксимационно решение в рамките на 3-4 седмици. В спринтовете пък има 4-5 значително по-лесни, алгоритмични задачи, които трябва да се решат за няколко часа.

Състезанието е подходящо за всички възрасти, като организаторите (и спонсорите на всеки кръг) предвиждат награди за най-добре представилите се. Не пропускайте възможността да се включите в надпреварата - първият кръг започва на 14. Октомври и е от тип Маратон.

IOI 2016

Публикувано на 16. Август, 2016г.
Днес приключи вторият състезателен ден на международната олимпиада по информатика за ученици (IOI) за 2016-та година. По всяка вероятност (все още неофициално) нашите състезатели ще вземат три медала - един златен и два сребърни - както следва:
  1. Христо Венев (12-ти клас, СМГ София) е 8-ми в света и получава заслужено своя четвърти (!) златен медал от IOI. Ицо също така има в актива си и сребро от 2012-та година, като тези медали го нареждат на второ място в класацията на най-добрите състезатели-ученици за всички времена, изпреварвайки досегашния ни най-добър състезател Румен Христов.
  2. Александър Кръстев (9-ти клас, МГ "Петър Берон" Варна) е 47-ми в света и получава сребърен медал. Много добро постижение за неговата възраст!
  3. Енчо Мишинев (11-ти клас, МГ "Атанас Радев" Ямбол) е 50-ти в света и също получава сребърен медал. Това е четвъртото учатие в IOI за Енчо, като досегашните му медали са сребро (2013-та), злато (2014-та), сребро (2015-та) и тази година (2016-та) добавя в актива си ново сребро.
  4. Даниел Атанасов (12-ти клас, СМГ София), който е сребърен медалист от миналата година, беше само на няколко точки от бронзов медал тази, но за съжаление не можа да го постигне.
Поздравления на представилите ни ученици!

Теми за побитови операции и бързо степенуване

Публикувано на 21. Май, 2016г.
През изминалата седмица написах две относително малки теми - за побитови операции и бързо степенуване. Както винаги, ако забележите някакви неточности или проблеми не се колебайте да репортнете проблема (селектирайки грешката и натискайки Enter).
Страницата е посетена 160298 пъти.